2 Replies - 2491 Views - Last Post: 24 July 2012 - 08:16 AM Rate Topic: -----

#1 bearsomg  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 11
  • Joined: 03-July 12

Changing the resolution in a Direct3D 10 Application

Posted 23 July 2012 - 01:52 PM

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!

Is This A Good Question/Topic? 0
  • +

Replies To: Changing the resolution in a Direct3D 10 Application

#2 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: -4
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

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?
Was This Post Helpful? 0
  • +
  • -

#3 bearsomg  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 11
  • Joined: 03-July 12

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.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1