256 Colors (2^8) - which ones doesnt matter, it depends on the palette used.
a pixel is a pixel. They are 1 pixel in width and 1 pixel in height. (Only on the Commodore64 Pixels for color sprites where 1px/2px)
There might be some constraints though regarding maximum size of an image or what palettes to use, you got to look up in the 8bit gfx scene not to produce any “nuked” work.
It depends if by “8-bit” you mean on-screen colors selected from a larger palette or if the actual bits describe the color. In either case you can only have up to 256 colors on-screen.
I feel the need to clarify this rather confusing (but true) statement:
A color is (usually) described by 3 byte = 38 bit = 3(0-255) = R/G/B
b’00000000 = dec’0
b’11111111 = dec’255
4 byte would be RGBA
The question is if 8-bit graphics stated by the OP use indexed 8 Bit color or direct 8 Bit color.
If the 8 bit would describe the actual color it would be indexed color.
Indexed color was used when limited video memory was available. The color information is not stored in the pixel as RGB which would use 3 byte per pixel.
The palette of 256 colors was either stored in the Hardware directly, or if you needed different colors, in a Palette file.
The pixel itself contained no color information, but only 1 byte (8 bit) pointing at the right color in the palette, hence -> color index -> indexed color. So rather than filling the video memory with useless data like 10 times the same red with 3 byte, it filled the memory with 10 times 1 byte, pointing at the same red.
Direct Color on the other hand, stores the pixels color information directly, resutlting in an images pixel using 3 or 4 bytes depending if its stores an alpha value as well - which is todays practice. Take 512mb video memory, you can store (51210241024) / 4 RGBA-Pixels and if thats not enough, you can redirect it to the systems memory, or a swap file, which was impossible in the birthdays of homecomputing.
My first computer was a Schneider in ~1985, it had so few system memory, which was shared with the video memory, that I could only write on half the screen, then the memory was filled up
IMO to pay tribute to 8bit and keep it “true” for 8bit art you should use one of the old indexed hardware palettes.
8-bit color used a hardware Color Look-Up Table (CLUT) with 256 entries in it. You could use the operating system default palette, or change it and really screw-up the system’s display for everyone.
I don’t miss those days any more than I miss “segment registers.” Building elaborate data structures in memory because I couldn’t work with more than 32K at a time.
Well… every image you see on your monitor is 8-bit. Think back to all of those Linear workflow/gamma tutorials you’ve read through (or will eventually read through if you stick with 3D long enough). Monitors can only display 8-bit images. The extra dynamic range captured by 16-bit RAW formats or the full 32-bit images generated by our 3D apps still display as 8-bit. The extra info is just for post-processing/tone mapping.
EDIT: (assuming of course it’s implied 8-bits per channel/RGB)