Saturday, January 7, 2012

Direct3D 11 Quake!

I'm currently porting GLQuake to D3D11. This was prompted by one requirement of my recent GPU lightmaps experiments - I needed bitwise operations in shaders, and they're not available in SM3 or below.

So far - it's interesting. I'll rant a bit about the overall experience when done, but for now it's enough to say that things could - and should - have been a lot better.

At the moment I have 2D GUI stuff and particles done, fairly roughly, and am about to move on to bruah models.

This is also a possible part of the roadmap for DirectQ. The next major release (1.9.0) is intended to drop support for a lot of legacy hardware, and the one after that (2.0.0) may go all the way to D3D11.

3 comments:

Ron Jones said...

Any plans to dabble with texture arrays in this renderer? Could be interesting.

Anonymous said...

Do note that DX11 gpus aren't very widespread yet. So completely dropping support for pre-DX11 might be a bit radical. But it's entirely your own choice.

source:
http://store.steampowered.com/hwsurvey

mhquake said...

"Any plans to dabble with texture arrays in this renderer? Could be interesting."

Definitely an option for lightmaps as it can hugely cut down on draw call overhead (which is not a bug deal on D3D11 anyway, but it seems the right thing to do).

"Do note that DX11 gpus aren't very widespread yet. So completely dropping support for pre-DX11 might be a bit radical. But it's entirely your own choice."

I'm using feature levels to be able to go down to D3D10 level (I'm actually doing most of the work for this on a D3D10 GPU in fact, so I know it works): that's about 80% coverage these days and it's only going to get higher.

http://msdn.microsoft.com/en-us/library/windows/desktop/ff476876%28v=vs.85%29.aspx