Calling Present() with sync interval of 1 in windowed mode
I'm currently working on porting an existing engine to D3D10 (using Vista RC1 build 5600, DX9 SDK Aug 2006) on RefRast.
With a windowed device I get the following debug output when calling Present(1, 0) on my swap chain.
First-chance exception at 0x7676dde0 in ArtPreviewerDebug.exe: Microsoft C++ exception: _com_error @ 0x0012f458.
If I call Present(0,0), i.e. with no wait for sync interval I don't get the error.
Is this simply a change for D3D10 that you can't wait for the vertical sync in windowed mode any more or is there some other issue I'm missing?
I get the same results if I modify one of the D3D10 samples to call Present(1,0).
However, when I try to switch one of the D3D10 samples to fullscreen to see if I can confirm my theory I get the following error messages and the app dies horribly:
First-chance exception at 0x7676dde0 in Tutorial07.exe: Microsoft C++ exception: _com_error @ 0x0012f610.
D3D10: UM Driver Internal Error.
Removing Device.
D3D10: WARNING: : Device removal has been triggered with the for the following reason (DXGI_ERROR_DRIVER_INTERNAL_ERROR: There is strong evidence that the driver has performed an undefined operation). [ EXECUTION WARNING #379: DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT ]
D3D10: Raising UM Driver Internal Error to continuable exception.First-chance exception at 0x7676dde0 in Tutorial07.exe: 0x00000879: 0x879.
Unhandled exception at 0x7676dde0 in Tutorial07.exe: 0x00000879: 0x879.
There's not really much of a question left now but just wondered if anyone else had encountered these issues or if I have a configuration-specific issue.
Cheers
Greg

