Sign in to follow this  
  • entries
    177
  • comments
    531
  • views
    163420

Sprites

Sign in to follow this  
Scet

235 views

Added in sprites to Doom.Net, though my implementation this time around is very different then previous versions.

The last version of Doom.Net used the D3D sprite interface, but each sprite still used a single texture and matrix so there was little to no batching involved. It was painfully slow.

This version uses my volume texture atlas code from VAtlas and the billboarding rotations are done manually so they can be batched along with the level.

I'm sure using Direct3D matrices would be faster, but then that would require each sprite to be a single draw call, which would make it much slower. Using the atlas its one draw call per light-level, so all sprites can be drawn at once if there's no light variations on screen.



After looking at the palette I'm thinking of switching from A8L8 format to A8 and using index 0 as the alpha, to save even more RAM. It's kind of funny that I'm worried about saving RAM even though Doom.Net now requires volume textures and pixel shader 2.
Sign in to follow this  


2 Comments


Recommended Comments

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now