Archived

This topic is now archived and is closed to further replies.

DX8 -> DX9

This topic is 5042 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I''m porting a project from DX8 to DX9, but I''ve run into a problem. When I''m running in fullscreen mode, the DX9 project will change the screen resolution, but the window will stay a window (meaning I can drag the window around, exposing the windows underneath it). When my DX8 project goes fullscreen, it goes fullscreen like it''s supposed to; the title bar is gone, no window borders, etc. My D3DPRESENT_PARAMETERS settings are the same for both, and my windows are both created identically. Only difference is I''m using LPDIRECT3D9 and LPDIRECT3DDEVICE9* in the DX9 project (obviously). Anyone know what the problem is?

Tolerance is a drug. Sycophancy is a disease.

Share this post


Link to post
Share on other sites
Ok, well changing the WS_OVERLAPPEDWINDOW style flag to WS_VISIBLE|WS_POPUP did the trick. Anyone know why WS_OVERLAPPEDWINDOW does something different in DX9?




Tolerance is a drug. Sycophancy is a disease.

Share this post


Link to post
Share on other sites
Are you sure you''re creating a full-screen device and not a windowed mode device? The D3DPRESENT_PARAMETERS structure changed between D3D8 and D3D9 and if you''re still initializing if it were a D3D8 struct, you may end up creating a windowed mode device by accident.

I''ve just modified one of the Tutorial samples (Vertices) from the DX9 SDK to run full-screen with an overlapped window and it works as expected. I don''t think this is a problem with Direct3D.

Share this post


Link to post
Share on other sites
I basically took my old code and changed all ''8''s to ''9''s. When I ran it, the screen resolution changed so that the window took up the whole screen, but it wasn''t "full screen," so to speak. It was still a window, with the title bar and everything. I could grab it and drag it around. I''ll look into the differences in D3DPRESENT_PARAMETERS. That sounds like the problem.




Tolerance is a drug. Sycophancy is a disease.

Share this post


Link to post
Share on other sites
I''m also having a problem. I''m using DirectX 8 SDK, and the computer has DirectX 9 runtime. When I make a fullscreen app of 640x480 (I have a resolution of 800x600), the window goes fullscreen, but it has a black border around it (the middle 640x480 is cleared and the rest of the 800x600 is black). When I had DirectX 8 runtime on my computer it worked fine.

/*
I use DirectX 8.1 and C++ (Microsoft Visual C++ 6.0 Professional edition)
*/

Share this post


Link to post
Share on other sites