Hi, everyone.
If i was a graphics designer/artist for the NES back in the day, what kind of limitations would i have on my images? I've read the basics - Y0SHi's NESTECH.DOC, Michael Martin's NES 101, the boards here, etc
I'm coming at this from a visual background, not a emu/coding/dev one. I understand the appearance of the graphics is caused by the design of the hardware. I understand, too, that skillful coding can work around these limitations, but i'm interested in the spec - what's the minimum?
Here's what i know, please correct...
256x224 NTSC
52 color "master" palette
25 colors max at any one time broken into two groups
1 sprite palette (12 unique colors) - 4 subgroups of 4 with the first color as transparent (same color in each subgroup)
1 background palette (13 unique colors) - 4 subgroups of 4 again with the first color mirrored again, but now as the visible "background color"
any single sprite (foreground or background) can only use one of the 4 color palette subgroups at a time
sprites are 8x8 or 8x16 pixels
color and appearance of each sprite is separate, allowing for palette swaps and color animation
64 different sprites max at any time
there are two planes - the foreground and background layer
what i don't know...
1. how do the 8x8 screen tiles and the attribute table work with the background sprites? How are background tiles different from foreground sprites?
2. are there any limitations on the color choices in the sprite and background palettes inside the 4 subgroups? Is the sprite transparent-color and the background "first-color" always the same color?
3. 8 sprites max per scan line, but how many can I layer on top of each other? Look at the intro screen for Zelda 1. The logo, sword and plant are all different sprites but are layered seemingly three deep - what about the two planes only?
Any advice is appreciated.
If i was a graphics designer/artist for the NES back in the day, what kind of limitations would i have on my images? I've read the basics - Y0SHi's NESTECH.DOC, Michael Martin's NES 101, the boards here, etc
I'm coming at this from a visual background, not a emu/coding/dev one. I understand the appearance of the graphics is caused by the design of the hardware. I understand, too, that skillful coding can work around these limitations, but i'm interested in the spec - what's the minimum?
Here's what i know, please correct...
256x224 NTSC
52 color "master" palette
25 colors max at any one time broken into two groups
1 sprite palette (12 unique colors) - 4 subgroups of 4 with the first color as transparent (same color in each subgroup)
1 background palette (13 unique colors) - 4 subgroups of 4 again with the first color mirrored again, but now as the visible "background color"
any single sprite (foreground or background) can only use one of the 4 color palette subgroups at a time
sprites are 8x8 or 8x16 pixels
color and appearance of each sprite is separate, allowing for palette swaps and color animation
64 different sprites max at any time
there are two planes - the foreground and background layer
what i don't know...
1. how do the 8x8 screen tiles and the attribute table work with the background sprites? How are background tiles different from foreground sprites?
2. are there any limitations on the color choices in the sprite and background palettes inside the 4 subgroups? Is the sprite transparent-color and the background "first-color" always the same color?
3. 8 sprites max per scan line, but how many can I layer on top of each other? Look at the intro screen for Zelda 1. The logo, sword and plant are all different sprites but are layered seemingly three deep - what about the two planes only?
Any advice is appreciated.