A game uses software rendering to draw a full-screen paletted (8-bit) image in memory.
What's the fastest way to put that image on the screen, using Direct3D?
Currently I convert the paletted image to RGB in software, then put it on a D3DUSAGE_DYNAMIC
texture (which is locked with D3DLOCK_DISCARD
).
Is there a faster way? E.g. using shaders to perform palettization?
Related questions:
- Fast paletted screen blit with OpenGL - same question with OpenGL
- How do I improve Direct3D streaming texture performance? - similar question from SDL author