struct
dw Next
dw Last
db index
db flags
ds 8
ds 72
end
But instead, you should really do this....
NextIndex ds 140
LastIndex ds 140
index ds 140
flags ds 140
GfxLo ds 140
GfxHi ds 140
Now, you really have to wonder why I haven't clicked with this before since my scripting system does just that! Well, now that I know, I'll make it part of the rewrite of the sprite system, but this is a pretty large undertaking and will take time...... bugger.
Anyway, even after I do all this Im still not sure I'll be able to use the cache to its full. Even at 40-50 cycles, thats almost a full scanline, and with 10 sprites, thats a lot to waste every game cycle. With a simple circular list, you only lost around 20-30 every minute or so....
Doing this change will also allow me to remove the redundent 8 bytes in each sprite-cache block, which will help save space overall.
1 comment:
Jeez, good working in advance :(
Post a Comment