Just futzing around making malleable HUD tables/pop up menus/etc. Of course, getting the att's to behave right for a truly malleable table on an 8x8 grid has been fun. But even constraining to full attribute grid, I noticed something, and I wondered what all of your favorite solutions for this sort of thing would be.
Essentially, I throw all the new nametable reads into a buffer and fire it out during the NMI, 8 tiles per frame, leaving me plenty of room in the NMI. The trick though, is, when is the lesser distracting time to load new attributes.
Do you guys think I should essentially flash the attributes to the entire to-be-affected area first, so that for a frame or two, the *color* changes before the pop up box is drawn? Or do you like having the box drawn for a frame or two with the wrong attributes, and then after a pickup frame get the right new nametable tiles in place? Or do you guys do it sort of procedurally - load a metaTile to coincide with a new attribute and sort of do it metaTile by metaTile rather than a run of nametable data then a run of attribute data/vice versa? Or maybe even something I haven't thought of?
I have played around with all of these to see which method I like more. They all have pros and cons. Curious what you guys would think of this.
Essentially, I throw all the new nametable reads into a buffer and fire it out during the NMI, 8 tiles per frame, leaving me plenty of room in the NMI. The trick though, is, when is the lesser distracting time to load new attributes.
Do you guys think I should essentially flash the attributes to the entire to-be-affected area first, so that for a frame or two, the *color* changes before the pop up box is drawn? Or do you like having the box drawn for a frame or two with the wrong attributes, and then after a pickup frame get the right new nametable tiles in place? Or do you guys do it sort of procedurally - load a metaTile to coincide with a new attribute and sort of do it metaTile by metaTile rather than a run of nametable data then a run of attribute data/vice versa? Or maybe even something I haven't thought of?
I have played around with all of these to see which method I like more. They all have pros and cons. Curious what you guys would think of this.