fine-attribute images?
Moderator: Moderators
fine-attribute images?
Has anyone bothered yet to create things that would look better with 8x1(-7) attribute grain than 8x8?
-
- Posts: 3140
- Joined: Wed May 19, 2010 6:12 pm
Re: fine-attribute images?
I guess I can start working on something.
- rainwarrior
- Posts: 8734
- Joined: Sun Jan 22, 2012 12:03 pm
- Location: Canada
- Contact:
Re: fine-attribute images?
This isn't NES but your question reminds me of the "macrocom" method of using scanline slivers for more detailed CGA graphics:
http://8088mph.blogspot.ca/2015/04/cga- ... com_method
Also thefox made a tool a while back that did 16 x 8 attribute regions (though I think it may have been configurable for narrower?)
viewtopic.php?f=21&t=7363
http://8088mph.blogspot.ca/2015/04/cga- ... com_method
Also thefox made a tool a while back that did 16 x 8 attribute regions (though I think it may have been configurable for narrower?)
viewtopic.php?f=21&t=7363
- FrankenGraphics
- Formerly WheelInventor
- Posts: 2064
- Joined: Thu Apr 14, 2016 2:55 am
- Location: Gothenburg, Sweden
- Contact:
- rainwarrior
- Posts: 8734
- Joined: Sun Jan 22, 2012 12:03 pm
- Location: Canada
- Contact:
Re: fine-attribute images?
I also found this proof of concept by lidnariq:
viewtopic.php?p=113253#p113253
viewtopic.php?p=113253#p113253
Re: fine-attribute images?
A 16x8 attribute table is much easier to pull off than a 8x1 attribute table. 16x8 can be done in pure software (possibly with added IRQ) over the entire two built-in nametables.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
Re: fine-attribute images?
Sure, but there's a great discrepancy between 16x8 and 8x1... 8x1 is like, 16 times finer than 16x8.Dwedit wrote:A 16x8 attribute table is much easier to pull off than a 8x1 attribute table.
Sadly that flower image posted by lidnariq looks like a bad proof of concept, seeing as the screen is mostly just yellow, with weird green stripes that look more like VHS noise (i.e. the added detail makes the image look WORSE).
Re: fine-attribute images?
Unfortunately, I am not an artist, and any attribute zone of any size make any automated conversion a total PITA. (I even tried your heuristic of "quantize to four colors, then mask and quantize each layer to three colors" and it really didn't work)
But if anyone has any skill with art wants to figure out how to draw things with 16x1 attribute zones, loading new data into the display program is easy.
(P.S. it's an aloe. Your misidentification assuredly says more about how terrible the conversion is.)
But if anyone has any skill with art wants to figure out how to draw things with 16x1 attribute zones, loading new data into the display program is easy.
(P.S. it's an aloe. Your misidentification assuredly says more about how terrible the conversion is.)
Re: fine-attribute images?
Perhaps try converting some of the better MSX art. The TMS9918A attribute model isn't quite the same as that of the NES using a hypothetical super-mapper, but it does have the 8x1 pixel slivers.
Re: fine-attribute images?
Yeah, I'm not blaming you for the result. I'm no expert in image processing either, so it's not surprising that my method wasn't of much help.lidnariq wrote:Unfortunately, I am not an artist, and any attribute zone of any size make any automated conversion a total PITA.
I would personally love to see something that made full use of the extended attributes. Maybe something hand-made will turn out better than photographs, because even with better attribute resolution the hardware is still too weak for that.But if anyone has any skill with art wants to figure out how to draw things with 16x1 attribute zones, loading new data into the display program is easy.
Or it's just evidence of my total lack of botanical knowledge...(P.S. it's an aloe. Your misidentification assuredly says more about how terrible the conversion is.)
- FrankenGraphics
- Formerly WheelInventor
- Posts: 2064
- Joined: Thu Apr 14, 2016 2:55 am
- Location: Gothenburg, Sweden
- Contact:
Re: fine-attribute images?
I think you get more mileage per increase by having a 16x8 or 8x8 granularity (since 8x8 is the character format). 16 or 8x1 is however pushing the boundaries, i guess that's the whole point?16 times finer than 16x8
Something hand drawn will look better. I think the key may be not overusing it. In the aloe vera picture, you see the grid at every border. Assume a coarser grid and then exploit it where you can for some nice details.
Or if you want to convert a photo, you still may have some luck with either posterizing and retouching a grayscale, then apply attributes, or you can trace it in Illustrator and then convert the result back to a bitmap. A lot of time will be spent doing so, though, and autotrace never looks good, so maybe pixel painting directly over the picture will pay off better. And you'd probably still need to use sprites for finer differently coloured details to make the most of it.
Re: fine-attribute images?
Even 16x4, 16x2 or 16x1 could be done in pure software as long as we'd be reduced to a small part of the screen. For example we could imagine a title screen or a logo screen using such a technique - turning BG rendering off for most of the screen and use all (or a very large part) of the available nametable area to draw a small logo with better colours. You can get 15 tiles height (120 px) of 16x4 attributes, 7.5 tiles height (60 px) of 16x2 attributes or 3.75 tiles high (30 px) of 16x1 attributes in pure software - add RAM for 4-screen mirroring and you can get double of each.Dwedit wrote:A 16x8 attribute table is much easier to pull off than a 8x1 attribute table. 16x8 can be done in pure software (possibly with added IRQ) over the entire two built-in nametables.
The OP mentionned 8x7 but I don't see how it would be any practical nor feasible to have a non-power-of-2 attribute granularity. Irregular granularity (such as 3-3-2 in each tile) would be feasible though.
In practice this was almost never done because attribute table limitations are hardly the bottleneck of what can be done with NES graphics - i.e. you'll never be able to represent something with smaller colour granularity than you couldn't represent with less, it'll just look slightly better. On the other hand, more colours per tile done by overlapping sprites is a much more interesting option, so that's why NES games went that way to increase the graphics quality.
Re: fine-attribute images?
Well, I just meant <8. So, practically, 8x4, x2, x1. (There's nothing *stopping* you from doing 8x7 cartside, but it'd be a pain.)
Some thought suggested that acting like it's 8x8 and then using the slivers to get some wiggle room on edges where you need a few more or fewer pixels of one color seems like the best use of a theoretical 8x1 (shallow slopes) rather than any picture actually needing to switch on a sliver and switch back the next down.
Some thought suggested that acting like it's 8x8 and then using the slivers to get some wiggle room on edges where you need a few more or fewer pixels of one color seems like the best use of a theoretical 8x1 (shallow slopes) rather than any picture actually needing to switch on a sliver and switch back the next down.
- FrankenGraphics
- Formerly WheelInventor
- Posts: 2064
- Joined: Thu Apr 14, 2016 2:55 am
- Location: Gothenburg, Sweden
- Contact:
Re: fine-attribute images?
That's right. A symmetrical ratio (16x16, 8x8) is easier to hide, so in the case of a 8x1 ratio or the like, moderate use of the fact will probably yield better looking results. Think of every change of attribute between one cell and the next as a potential grid shower. If just about every cell is different, you end up with what looks like paused tape noise, getting in the way of the picture.
Just apply it here and there, where it looks the most convincing and/or to sometimes break the coarser x8 base act-as-grid.
You could for example use three to five 8x1 slivers on top of each other to colour a tuft of grass hanging down in front of ground or rock, approximating next generation graphics.
Just apply it here and there, where it looks the most convincing and/or to sometimes break the coarser x8 base act-as-grid.
You could for example use three to five 8x1 slivers on top of each other to colour a tuft of grass hanging down in front of ground or rock, approximating next generation graphics.