-
-
Notifications
You must be signed in to change notification settings - Fork 172
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow RGBGFX to take an external palette specification #487
Comments
Would it also be possible to make an "inferred palette" with the first four RGB values encountered? |
That's already the case, with the inferred palette being sorted by brightness. But sometimes you want to have white in your sprites, for which this solution isn't satisfactory. |
GBA has 16 palettes of 16 colors each, rather than 8 of 4. pokeruby/pokeemerald sometimes have grayscale images, but other images are colored entirely with the first palette in a set. For example, https://github.com/pret/pokeemerald/blob/master/graphics/frontier_pass/tiles.png. So CGB images could do the same: let the input palette file specify 4xN colors for N palettes, and expect the input image to be either grayscale or colored with the first 4. In either case, indexing the input image wouldn't be necessary. (Although if two of the colors in the first palette are identical, the image would have to be grayscale to distinguish them.) |
Suggested workflow after a lot of discussion: first, create a "default" palette—either by following the PLTE chunk if any, or by gathering all colors in the PNG otherwise. Then, if a palette is specified on the CLI, override. Also useful: taking the spec both as a list of colors directly ( Suggested: a |
|
I meant |
Base-4 like |
Or prefix-less? |
Rationale: everybody's having headaches regarding the "indexed PNG" thing. It makes sense, it should work properly, but tooling for it is in practice abysmal.
Proposal: support input palettes like SuperFamiconv. Input formats:
Problem: how to make this work with CGB images?
The text was updated successfully, but these errors were encountered: