I'll have to look into the D3D stuff since I haven't actually been the one to do that part of the code. One thing I do remember right now is that the optimal texture size is 256x256, so probably what you want to do is put multiple tiles on a texture of this size, and then just set uv coordinates on the quads to show a single tile. Same idea should go for sprites as well.
Hmm.. let me think a little bit on how big all of this might be. A 256x256x32bbp texture takes 256 KB of vram. Let's assume we want to make everything be able to fit on a 32 MB video card. Since we don't really have all that many vertices to worry about, we can say that there's about 25 MB available for textures. (The front and back buffers at 800 x 600 would take 3-4 MB.) This leaves us with room for 100 of those texture blocks. I'm not sure how big you're thinking of making the tiles or tilesets, but for this I'll say we want 4096 32x32 tiles. We can fit 64 tiles onto a texture block, so this would take up 64 texture blocks. This leaves us with 36 texture blocks for sprites, hud graphics, particles, and whatever else needs to be on the screen. I sort of doubt that that's enough room left for sprites and their animations.
I donno, that's just some initial thinking.
I don't really see any need to make code empty interface classes since you can always overload inherited virtual functions. Sometimes it's nice to have a default behavior anyway. I see no problems in doing it this way either, so whatever you prefer. The thing I am a little concerned about is the multiple inheritance. This has been I've been told not to do many times, however I'm not exactly sure why..
__________________
<div style="float: right; width: 100px; height: 70px; margin: 5px 15px;"><img src="http://madskills.org/monolith/idleserver.gif" style="width: 98px; height: 65px;"><img src="http://madskills.org/monolith/theserver.gif" style="width: 98px; height: 65px; position: relative; top: -65px;"></div><div style="margin: 0 3em; font-size: 80%; font-style: italic;">Love is patient, love is kind. It does not envy, it does not boast, it is not proud. It is not rude, it is not self-seeking, it is not easily angered, it keeps no record of wrongs. Love does not delight in evil but rejoices with the truth. It always protects, always trusts, always hopes, always perseveres.</div><div style="text-align: right; text-size: 80%;">1 Corinthians 13:4-7</div>
|