0
\$\begingroup\$

I've found the keywords "subpalette" and "PPU palette", but they seem to be NES-specific. Though the idea of using a small palettes table and use 2 bits per pixel in an image (+ few bits reference to a palette per tile) looks like a cool retro compression method with low decompression drawbacks, so I guess it was used more widely.

Does this technique (of using different palettes for different blocks of pixels) have a name? Does it have a usage apart from NES?

\$\endgroup\$
2
  • \$\begingroup\$ You could consider block compression texture formats like DXT1 to be a version of this, where each block of eg. 4x4 pixels stores the information to generate a palette of 4 colours to be used in that block, and two bits per pixel select one of those four options. \$\endgroup\$
    – DMGregory
    Commented Jan 10, 2021 at 13:18
  • 1
    \$\begingroup\$ I don't have a reference at the moment, but you may be finding NES specific terms because it might have been a solution to a NES specific hardware limitation. I recall reading that some devs used different palettes for different tiles in order to work around prior limits on how many different simultaneous colors the NES could support on a screen. I think Castlevania 2 or 3 was one of the first games to use this technique. \$\endgroup\$
    – Pikalek
    Commented Jan 11, 2021 at 14:59

1 Answer 1

0
\$\begingroup\$

I think there is no single name for such technique but quite close are color mapping and color look-up tables. In such approach color from single channel texture can be remapped to final RGB color via 1-dimentional remapping texture. If you want to farther compress data and use 2 bits per pixel, then you can treat 8 bits of source texture pixel as 2x2 block of destination pixels. Why would you want to do so in your project? Do you actually want to compress data that much or just render retro-like graphics?

\$\endgroup\$
2
  • \$\begingroup\$ Dear @Sergio, I'm afraid you've got me wrong: you're talking about a single palette -- the technique called "indexed color" (as I understand), while I'm talking about the usage of multiple palettes for a single image, where different palettes are applied to different blocks. I don't want to do this in my project, I'm just interested in terminology to find more about the usage of this technique in old games, watch interesting videos, send them to my friends :) \$\endgroup\$
    – Charlie
    Commented Jan 10, 2021 at 11:03
  • 1
    \$\begingroup\$ Multiple palettes can be used for same image in this technique. Additional per-object info would determine which palette to use. But I understand that you are looking for things like 'cloud is a bush' in Mario ;) \$\endgroup\$
    – Sergio
    Commented Jan 10, 2021 at 11:41

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .