Jump to content
  • Advertisement


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


D3DPOOL_DEFAULT fullscreen problems with Win ME/98

This topic is 5861 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

This is a problem I have trying to fix for the past 5 days but with no luck. I am creating some index and vertex buffers for rendering using D3DPOOL_DEFAULT. I have the D3D device running in its own MFC window, and it can be resized, and make it go fullscreen. When the window is told to go fullscreen on a windows ME/98 system, the debugger reports that the D3DPOOL_DEFAULT buffers have not been reset, however, when the program simply resizes the window, everything works perfectly. On windows XP, there is no problem with any type D3DPOOL managment of any kind. When only resizing the window on any OS, the program works. And after each resize/fullscreen change, gpd3device->Reset(&d3dpp); is called. This is obviously why the error occurs using D3DPOOL_DEFAULT, but ONLY for windows ME and 98, and ONLY in fullscreen mode. When changing to D3dPOOL_SYSTEMMEM or MANAGED, fullscreen mode is created, but the vertex and index buffers created will not show any information on screen. The code difference between resizing and going fullscreen is very minimal. When going into and returning from fullscreen only 4 extra lines are called: d3dpp.BackBufferFormat=m_Format; d3dpp.Windowed = m_Windowed; d3dpp.BackBufferWidth = m_Width; d3dpp.BackBufferHeight = m_Hieght; then the memory is freed, then reset() is called. What i have found out that if i simply comment out the line changing the windowed mode, the program will run on 98/ME. One other thing I noticed was windows ME calls the OnSize() function for the MFC window, when windows XP does not. I can only assume that windows 98/ME must go through a different set of processes when taking a window fullscreen. When debugging the code, the D3DPOOL_DEFAULT objects are released before calling reset(), though the error still occures with 98/ME. ( they have to or else it would not work in XP either). There must be something I am missing before I call my Reset() function that I must take into account for earlier versions of windows. Thanks for any help. Carradine

Share this post

Link to post
Share on other sites

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!