Jump to content
  • Sign Up

Regarding DirectX 11—Minor Graphics Options Differences


Recommended Posts

  • ArenaNet Staff

Hi everyone, I have a message from our Senior Graphics Programmer James Fulop. Read on!

 

Hey all,

James Fulop here, Senior Graphics Programmer for Guild Wars 2.

I'm here to give an update on how a couple of the graphics options behave differently between DirectX 9 and DirectX 11. The main difference is the DirectX 11 graphics backend doesn't implement exclusive full-screen options in the same way as DirectX 9. This then creates knock-on effects with the Refresh Rate and Full-Screen Gamma slider options.

Exclusive Full-Screen

To be clear, when I talk about exclusive full-screen, I am referring to the resolution options with explicit resolution counts. For example, with the "Full Screen - 1920 x 1080" option, the graphics menu can be a little confusing since Window mode and resolution choice are in the same drop-down menu.

We don't plan on implementing exclusive full-screen in the same way for DirectX 11. With the current state of Windows 10, there is no discernable performance difference between exclusive full-screen and windowed full-screen (see the article here for details: https://devblogs.microsoft.com/directx/demystifying-fullscreen-optimizations/). Additionally, by not using exclusive full-screen, it alleviates a lot of the application freezing and monitor flickering that happens when changing window focus of the full-screen application. Currently, the multitasking experience for full-screen is much nicer on DirectX 11.

The resolution option menu will remain the same (Window / Windowed Fullscreen / Full Screen - [resolution]). At a certain point under the hood, "Full Screen - [resolution]" windows are exactly the same as "Windowed Fullscreen" windows.

Refresh Rate

This setting lets you manually override the hardware refresh rate of your monitor.

On DirectX 9, this only works when in exclusive full-screen. Since this setting does not work for DirectX 11, there are two options to manually change the frame rate of the game. One would be to use the Frame Limiter option, which tells the client to manually throttle the frame rate. The second option would be to manually change the refresh rate of the monitor through Windows. Currently this is done through Settings -> Systems -> Display -> Advanced display settings -> Refresh rate on Windows 10.

Gamma

You could consider this a "brightness" slider.

On DirectX 9, gamma only works when in exclusive full-screen. It basically works by tweaking a setting on the monitor to change how the output is rendered.

For DirectX 11, I have changed how this is implemented to instead be a full-screen postprocessing effect that happens after all the rendering is complete. An added bonus is that this makes this setting work on all window options. Be aware that the response curve of the slider may be slightly different between DirectX 9 and DirectX 11.

Thank you all for your feedback on the DirectX 11 feature and for participating in the beta. I hope this post helped you learn a little bit about the game under the hood. Thanks for reading.

  • Like 31
  • Thanks 11
  • Confused 1
  • Sad 1
Link to post
Share on other sites
  • Replies 65
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Hi everyone, I have a message from our Senior Graphics Programmer James Fulop. Read on!   Hey all, James Fulop here, Senior Graphics Programmer for Guild Wars 2. I'm here to give a

Please break down the Postprocessing setting into several independent options (best case scenario would be sliders) controling their respective effects, as it stands now its basically unusable because

please program the option to disable all effects so that the fights do not turn into an impenetrable mess of explosions and the option to disable the spontaneous camera range changes at such moments a

Posted (edited)

please program the option to disable all effects so that the fights do not turn into an impenetrable mess of explosions and the option to disable the spontaneous camera range changes at such moments as, for example, the start of a boss fight.thanks

Edited by Arziki.8129
  • Like 17
  • Haha 1
  • Confused 12
Link to post
Share on other sites
Posted (edited)

Please break down the Postprocessing setting into several independent options (best case scenario would be sliders) controling their respective effects, as it stands now its basically unusable because it controls bloom and the bloom is absolutely blinding.

It also seems to control some kind of contrast or saturation effect which is also way overdone in the default available steps, especially when combined with the insane bloom/glow setting.

Edited by Perfect Self.6849
spelling is hard
  • Like 23
  • Thanks 6
  • Haha 1
Link to post
Share on other sites
Posted (edited)

Very happy to see that some lower level details are being explained for these settings!
Thanks for this!

 

I have some questions about the new gamma and fullscreen though.

Quote

We don't plan on implementing exclusive full-screen in the same way for DirectX 11. ... by not using exclusive full-screen

I have changed how this is implemented to instead be a full-screen postprocessing effect that happens after all the rendering is complete. An added bonus is that this makes this setting work on all window options.

Now that you are taking away the exclusive fullscreen for DirectX 11, how does the game interact with the Windows gamma correction? I believe the Color Management profile affects all windowed applications, so Guild Wars 2 will receive two passes of gamma correction now that the slider is available in windowed fullscreen.

What is the "correct" setting for this slider so that the game is not being double gamma-corrected by both the post-processing shader and the Windows Color Management profile?

Is there any way to restore the ability for a windowed fullscreen application to be ignored by Windows color management? This is a capability that we are now losing by no longer having exclusive fullscreen. I have noticed that exclusive fullscreen applications will bypass the Windows Color Management and that made the in-game gamma slider completely authoritative over the gamma correction.

Edited by Romen.4560
  • Like 4
Link to post
Share on other sites

There are still some of us using triple monitor surround. Currently, with DirectX 11, the mini-map , the chat window, the top left menu, and the top-right game status messages are moved from the edges of  center monitor to the extreme edges of the left and right monitors. It would be nice if these items were made dockable to different areas of the total display or some how kept on the middle monitor.

Also, the character select screen covers all 3 monitors horizontally which means the top and bottom of the displayed character are chopped off and all we see is his/her belt.

Minor issues to be sure, but one can always hope. 

Triple 32" 2K monitors in 7680 x 1440 with G-Sync at 100+ fps is AWESOME by the way. This game is beautiful!

  • Like 2
Link to post
Share on other sites

Does this mean you'll start implementing colour blind mode and an accessibility team so that people who are physically unable to see the visual overlaps of spells/abilities/infusions, etc can be properly rendered?

  • Like 3
Link to post
Share on other sites
Quote

Exclusive Full-Screen

We don't plan on implementing exclusive full-screen in the same way for DirectX 11. With the current state of Windows 10, there is no discernable performance difference between exclusive full-screen and windowed full-screen...

What about people playing on high resolution screens like 3840x2160 or even more than that?

Without exclusive full screen mode that let us play at lower resolutions than native one we are pretty much screwed. There is no hardware available that would let me play GW2 at anything close to 60fps when I run game at my screen's native resolution - even with DX11 performance boost compared to DX9.

If you don't want to implement it please at least let game render game at non-native display resolution with DX11 enabled. Right now it doesn't matter if I select Fullscreen [1920x1080] or [2560x1440] - game will still render game at full native resolution with entire GUI being blurry as hell instead of scaled up: https://imgur.com/I5Rqaw2

 

  • Like 4
Link to post
Share on other sites
24 minutes ago, Izzy.2951 said:

Seems weird than Directx9 provided best support for Full windows screen than Directx11, maybe change after to Directx12? 😄

The DX12 API works very differently from DX11, which was closer to DX9, thus making the upgrade more simple. If I understand correctly, upgrading to DX12 would basically require a full rewrite of the render pipeline and supporting components. 

Link to post
Share on other sites
Posted (edited)
16 minutes ago, inbadplace.7329 said:

What about people playing on high resolution screens like 3840x2160 or even more than that?

Without exclusive full screen mode that let us play at lower resolutions than native one we are pretty much screwed. There is no hardware available that would let me play GW2 at anything close to 60fps when I run game at my screen's native resolution - even with DX11 performance boost compared to DX9.

If you don't want to implement it please at least let game render game at non-native display resolution with DX11 enabled. Right now it doesn't matter if I select Fullscreen [1920x1080] or [2560x1440] - game will still render game at full native resolution with entire GUI being blurry as hell instead of scaled up: https://imgur.com/I5Rqaw2

 

From testing this right now in the DX11 beta, selecting a "Full Screen" resolution that is lower than your monitor's native resolution will actually render the game at that lower resolution and reduce the number of pixels the GPU has to render. The framebuffer is being sized to what you pick in the resolution dropdown. But it is being stretched to fill your desktop afterwards.

The blurriness comes from that stretching. It is kind of disappointing.
Before when you did have real exclusive fullscreen it was your monitor's built in scaler hardware that was doing a better job at upscaling the lower resolution to your monitor's native pixels. There probably is a noticeable difference that will vary depending on the monitor model.

There is also the "Render Sampling" option. That will allow the game window to be rendered as desktop resolution and keeps the UI sharp. But the in-world graphics will be rendered to a smaller intermediate framebuffer that is some percentage smaller than the selected resolution. It looks like it might be around ~80%?

Edited by Romen.4560
  • Like 2
Link to post
Share on other sites
8 minutes ago, Romen.4560 said:

From testing this right now in the DX11 beta, selecting a "Full Screen" resolution that is lower than your monitor's native resolution will actually render the game at that lower resolution and reduce the number of pixels the GPU has to render. The framebuffer is being sized to what you pick in the resolution dropdown. But it is being stretched to fill your desktop afterwards.

The blurriness comes from that stretching. It is kind of disappointing.
Before when you did have real exclusive fullscreen it was your monitor's built in scaler hardware that was doing a better job at upscaling the lower resolution to your monitor's native pixels. There probably is a noticeable difference that will vary depending on the monitor model.

There is also the "Render Sampling" option. That will allow the game window to be rendered as desktop resolution and keeps the UI sharp. But the in-world graphics will be rendered to a smaller intermediate framebuffer that is some percentage smaller than the selected resolution. It looks like it might be around ~80%?

I just tested this on my lg 4k monitor and had no problems with dx 11 resolution scaling. It was all clear. I compared it to your picture. Might be because I have dpi scaling selected

Link to post
Share on other sites
25 minutes ago, Thaumanovic.9238 said:

The DX12 API works very differently from DX11, which was closer to DX9, thus making the upgrade more simple. If I understand correctly, upgrading to DX12 would basically require a full rewrite of the render pipeline and supporting components. 

Yeah, but for  example WoW, a game that dont suffer as much from fps as gw2, implemented dx11 and after dx12 and they have both atm so you choose.

  • Haha 1
  • Confused 2
Link to post
Share on other sites

Speaking of Full Screen, I think the game needs the option to natively allow you to choose which Display to Full Screen on in the Graphics Options. Most games have the option but GW2 still doesn't have this. At most, people are forced to switch their Display settings around as opposed to allowing players to choose their display option natively within the game. 

  • Like 2
Link to post
Share on other sites
Posted (edited)
20 minutes ago, ChronoPinoyX.7923 said:

Speaking of Full Screen, I think the game needs the option to natively allow you to choose which Display to Full Screen on in the Graphics Options. Most games have the option but GW2 still doesn't have this. At most, people are forced to switch their Display settings around as opposed to allowing players to choose their display option natively within the game. 

I have noticed that dragging the window to another monitor then clicking the Maximize button causes the game to change to fullscreen borderless on that monitor. It's a lot of actions to get there but that already seems to be fully working.
I would love to see this setting too but you're not completely out of luck right now.

Edited by Romen.4560
Link to post
Share on other sites

Does this mean that DX11 is safe to use now?  It completely screwed up my game back on day one (as in blew the character select screen up to a black screen with some giant text and no ability to enter the game, had to do command line stuff to revert to DX9 on launch) and I haven't dared touch it since.  I've also seen a lot of comments about odd visual glitches being routine issues for those using it.

If these problems have been patched out as part of the programming effort explained in this thread, I'm willing to test switch to it again.  If not, I sure hope they're fixed before it's the only option.

Link to post
Share on other sites
6 minutes ago, Donari.5237 said:

Does this mean that DX11 is safe to use now?  It completely screwed up my game back on day one (as in blew the character select screen up to a black screen with some giant text and no ability to enter the game, had to do command line stuff to revert to DX9 on launch) and I haven't dared touch it since.  I've also seen a lot of comments about odd visual glitches being routine issues for those using it.

If these problems have been patched out as part of the programming effort explained in this thread, I'm willing to test switch to it again.  If not, I sure hope they're fixed before it's the only option.

In tomorrow's Patch DX11 will be the default for new players and will be out of beta. But since the last patch that fixed DX11 issues I haven't had any more problems

  • Like 1
  • Thanks 1
Link to post
Share on other sites
3 hours ago, Rubi Bayer.8493 said:

Hi everyone, I have a message from our Senior Graphics Programmer James Fulop. Read on!

 

Hey all,

James Fulop here, Senior Graphics Programmer for Guild Wars 2.

I'm here to give an update on how a couple of the graphics options behave differently between DirectX 9 and DirectX 11. The main difference is the DirectX 11 graphics backend doesn't implement exclusive full-screen options in the same way as DirectX 9. This then creates knock-on effects with the Refresh Rate and Full-Screen Gamma slider options.

Exclusive Full-Screen

To be clear, when I talk about exclusive full-screen, I am referring to the resolution options with explicit resolution counts. For example, with the "Full Screen - 1920 x 1080" option, the graphics menu can be a little confusing since Window mode and resolution choice are in the same drop-down menu.

We don't plan on implementing exclusive full-screen in the same way for DirectX 11. With the current state of Windows 10, there is no discernable performance difference between exclusive full-screen and windowed full-screen (see the article here for details: https://devblogs.microsoft.com/directx/demystifying-fullscreen-optimizations/). Additionally, by not using exclusive full-screen, it alleviates a lot of the application freezing and monitor flickering that happens when changing window focus of the full-screen application. Currently, the multitasking experience for full-screen is much nicer on DirectX 11.

The resolution option menu will remain the same (Window / Windowed Fullscreen / Full Screen - [resolution]). At a certain point under the hood, "Full Screen - [resolution]" windows are exactly the same as "Windowed Fullscreen" windows.

 

 

 

Is it possible to get a Maximized Window option. I run in Windowed mode and due to quirks in Win 10, there is always a gap around the edges on free floating windows. There's no gap on maximized windows. I'm always having to reposition the window when I click the border and accidentally cause the window to resize. Usually this happens during intense game play causing the game to freeze while it's rebuilding the screen. Maximized would avoid this and also let it better adapt to desktop resolution changes.

Link to post
Share on other sites
Posted (edited)
20 minutes ago, Tekoneiric.6817 said:

 

 

Is it possible to get a Maximized Window option. I run in Windowed mode and due to quirks in Win 10, there is always a gap around the edges on free floating windows. There's no gap on maximized windows. I'm always having to reposition the window when I click the border and accidentally cause the window to resize. Usually this happens during intense game play causing the game to freeze while it's rebuilding the screen. Maximized would avoid this and also let it better adapt to desktop resolution changes.

There is already an option called windowed fullscreen that should be what you are looking for and based on the OP's explanation, fullscreen and windowed fullscreen are essentially the same option now when using DX11.

Edited by kokocabana.8153
Link to post
Share on other sites
4 hours ago, Rubi Bayer.8493 said:

Hi everyone, I have a message from our Senior Graphics Programmer James Fulop. Read on!

 

Hey all,

James Fulop here, Senior Graphics Programmer for Guild Wars 2.

I'm here to give an update on how a couple of the graphics options behave differently between DirectX 9 and DirectX 11. The main difference is the DirectX 11 graphics backend doesn't implement exclusive full-screen options in the same way as DirectX 9. This then creates knock-on effects with the Refresh Rate and Full-Screen Gamma slider options.

Exclusive Full-Screen

To be clear, when I talk about exclusive full-screen, I am referring to the resolution options with explicit resolution counts. For example, with the "Full Screen - 1920 x 1080" option, the graphics menu can be a little confusing since Window mode and resolution choice are in the same drop-down menu.

We don't plan on implementing exclusive full-screen in the same way for DirectX 11. With the current state of Windows 10, there is no discernable performance difference between exclusive full-screen and windowed full-screen (see the article here for details: https://devblogs.microsoft.com/directx/demystifying-fullscreen-optimizations/). Additionally, by not using exclusive full-screen, it alleviates a lot of the application freezing and monitor flickering that happens when changing window focus of the full-screen application. Currently, the multitasking experience for full-screen is much nicer on DirectX 11.

The resolution option menu will remain the same (Window / Windowed Fullscreen / Full Screen - [resolution]). At a certain point under the hood, "Full Screen - [resolution]" windows are exactly the same as "Windowed Fullscreen" windows.

Refresh Rate

This setting lets you manually override the hardware refresh rate of your monitor.

On DirectX 9, this only works when in exclusive full-screen. Since this setting does not work for DirectX 11, there are two options to manually change the frame rate of the game. One would be to use the Frame Limiter option, which tells the client to manually throttle the frame rate. The second option would be to manually change the refresh rate of the monitor through Windows. Currently this is done through Settings -> Systems -> Display -> Advanced display settings -> Refresh rate on Windows 10.

Gamma

You could consider this a "brightness" slider.

On DirectX 9, gamma only works when in exclusive full-screen. It basically works by tweaking a setting on the monitor to change how the output is rendered.

For DirectX 11, I have changed how this is implemented to instead be a full-screen postprocessing effect that happens after all the rendering is complete. An added bonus is that this makes this setting work on all window options. Be aware that the response curve of the slider may be slightly different between DirectX 9 and DirectX 11.

Thank you all for your feedback on the DirectX 11 feature and for participating in the beta. I hope this post helped you learn a little bit about the game under the hood. Thanks for reading.

Thanks for the explanation of what's going on under the hood. One issue that I have encountered with DX11 on GW2 not having exclusive fullscreen is that I am not able to use nVidia DSR to run the game at 4k on my 1080p monitor.

  • Like 1
Link to post
Share on other sites
3 minutes ago, kokocabana.8153 said:

There is already an option called windowed fullscreen that should be what you are looking for.

That option covers the taskbar. I need the taskbar visible for various reasons which is why I run windowed mode and posted the request.

Link to post
Share on other sites
2 hours ago, Izzy.2951 said:

Seems weird than Directx9 provided best support for Full windows screen than Directx11, maybe change after to Directx12? 😄

True fullscreen no longer exists in windows 8 and up. It is a clunky relic from early windows that serves no purpose on modern systems. There is no reason for newer APIs to support it, and the DWM just fakes it for old software by using borderless windows.

  • Thanks 1
  • Haha 1
  • Confused 1
Link to post
Share on other sites
Posted (edited)
2 hours ago, inbadplace.7329 said:

What about people playing on high resolution screens like 3840x2160 or even more than that?

Without exclusive full screen mode that let us play at lower resolutions than native one we are pretty much screwed.

This is what the render sampling option does. You want to set render sampling to subsample to re-create this.

Most modern games call this "render scaling" and give you finer control over the exact amount (usually a double/float slider going from 0.5 to 1.5, ish). It would certainly be nice if GW2 could update the binary render sampling option to a proper render scale setting 🙂

Edited by nezroy.8492
  • Like 1
  • Thanks 1
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...