Problem with D3D9On12

Problems building or running the engine, queries about how to use features etc.
apierini
Gnoblar
Posts: 1
Joined: Wed Oct 02, 2024 4:43 pm

Problem with D3D9On12

Post by apierini »

Ogre Version: 1.12.8
Operating System: Windows 11
Render System: DirectX 9

Hello,

we are using Ogre 1.12.8 in a window of our CAD system with DirectX 9 renderer. It is working fine when we have a graphic card with DirectX 9 hardware support, for example a NVidia card:

Image

But we have a problem when we have a graphic card that relies on D3D9On12 to emulate DirectX 9 support, such as one of the newest Intel cards:

Image

I can't understand if the problem is in our code or in Ogre or in D3D9On12. Any suggestion would be very appreciated.

Andrea

User avatar
dark_sylinc
OGRE Team Member
OGRE Team Member
Posts: 5429
Joined: Sat Jul 21, 2007 4:55 pm
Location: Buenos Aires, Argentina
x 1337

Re: Problem with D3D9On12

Post by dark_sylinc »

DirectX SDK used to include a control panel CPL which allowed to enable Validation Debug Layers for DX9. If it fails validation, it's your / Ogre problem.

If not, it's D3D9On12 problem.

On such cards, you could try dxvk instead, as it works on Windows (not just Linux). See this Reddit post.

apierini
Gnoblar
Posts: 1
Joined: Wed Oct 02, 2024 4:43 pm

Re: Problem with D3D9On12

Post by apierini »

I tried DXVK and the behaviour of the application is the same as D3D9On12.

I've also found that the problem happens when we have multiple render windows (one dummy window to hold the device and one real main window); I solved attaching the main render window to the main external hwnd after its activation and sizing instead of in WM_CREATE handler (even if it always worked fine with real hardware DirectX 9 support).

I suggest to the OGRE community to thoroughly test OGRE against D3D9On12 because other card manufacturer could soon rely on it as Intel did.

Andrea

Last edited by apierini on Fri Oct 04, 2024 2:46 pm, edited 2 times in total.