Я использую DirectX для рендеринга изображений в неуправляемом коде и D3DImage в WPF для размещения поверхности. Когда система переходит в спящий режим, вызывается событие frontBufferLost. Событие обрабатывается и все ресурсы уничтожаются и воссоздаются.
При использовании Direct3D9 в неуправляемом коде все работает правильно. После возникновения события устройство воссоздается, и рендеринг выполняется без ошибок.
Но когда я использую DirectX10 в движке, так как мне также требуется устройство Direct3D9 для очереди Surface, я пытаюсь удалить и воссоздать как 10, так и 9 устройств. На этом этапе, во время вызова GetDeviceCaps, я всегда получаю 0x8876086a, который, по моему мнению, недоступен для устройства.
Может кто-нибудь помочь мне с этой проблемой?