Hello, I am currently building a rendering engine in native C++ using Direct3D 10 and the Win32 API. The engine will have 2 separate windows, one being the rendering window and the other being a control window which is used to load models, animaitons, etc. It is also used to send the rendering window to other displays on the system.
Right now the program will use EnumMonitorDisplays to get all active displays on the system, then give the user the option to send the rendering window to any of the active monitors. It is currently able to show the monitors, and when one is clicked it will move the window over to the selected monitor and maximize it. However, Direct3D 10 does not rescale by itself, so the image appears stretched.
My question is; what is the correct way to resize the Direct3D device without having to recreate all my buffers, resources, textures, effects, etc?
Thank you!
2 Replies - 1010 Views - Last Post: 24 July 2012 - 08:16 AM
#1
Changing the resolution in a Direct3D 10 Application
Posted 23 July 2012 - 01:52 PM
Replies To: Changing the resolution in a Direct3D 10 Application
#2
Re: Changing the resolution in a Direct3D 10 Application
Posted 24 July 2012 - 06:48 AM
Your last paragraph on recreating everything was exactly what I was about to tell you that you need to do.
The only other option might be to load everything at max res and then scale down to lesser resolutions, but that causes other issues like memory consumption, wrong aspect ratios, etc.
How are you going to support so many buffers anyway?
The only other option might be to load everything at max res and then scale down to lesser resolutions, but that causes other issues like memory consumption, wrong aspect ratios, etc.
How are you going to support so many buffers anyway?
#3
Re: Changing the resolution in a Direct3D 10 Application
Posted 24 July 2012 - 08:16 AM
What would need to be recreated; everything? I've heard that this isn't necessary in D3D 10. If so, what would be the correct way to do it? I tried to release all buffers, render target, device, and effect but when I go to create them again I get access violation errors.
By "all buffers" I mean the back buffer, depth buffer, etc.
By "all buffers" I mean the back buffer, depth buffer, etc.
Page 1 of 1
|
|

New Topic/Question
Reply



MultiQuote





|