Caustics IRL

Indirect lighting IRL

Spring & summer are really good periods for rendering programmers. They allow observing all these lighting effects definitely better implemented by Mother Nature ;) …in addition to holidays, “far niente” , french pastis (with moderation) & petanque under the sun.

More seriously, don’t worry, new stuff is coming for this blog. Little teasing: EASTL, Light Pre-Pass & FXAA iPhone benchmarks and personal reviews…Stay tuned.

::DirectX::HowTo:: know if the debug layer is activated

Just this once won’t hurt, I’m not talking about openGL or iPhone today.

I found the DirectX10/11 control panel really awful to set the debug layer. Sometimes on some computers, for any unknown reason it has no effect either if you set it to “forced on“. Moreover, it could be hard to verify if the path added for the application you want to debug is correct, etc…

Here is a little but useful trick I’m using to know inside my application if the debug layer is really currently activated or not (could be used also to know if the user overrides your device creation layer setting via the control panel) :

bool IsDebugLayerActivated(const ID3D10Device& a_rDevice)
ID3D10InfoQueue* pInfoQueue;
a_rDevice.QueryInterface(__uuidof(ID3D10InfoQueue), (void **)&pInfoQueue);
bool bActivated =  (pInfoQueue != NULL);

if (bActivated)
return bActivated;