Speedylord.2798 Posted December 21, 2020 Share Posted December 21, 2020 Hello again :)! I've been interested in using the D912pxy addon for a long time now and have recently tried it out for the first time via the Guild Wars 2 Addon Manager (great tool btw!). I must say it's a pretty neat addon! I'm running a competent gaming system (an i7-9750H with 6 cores 12 threads clocked at 4Ghz and a GTX1660 Ti 6GB mobile GPU), and even though I was running the game pretty smoothly already, performance for free is always welcome right:D? From my observations the addon especially helped in 'heavy' areas like Divinity's Reach (especially now that Wintersday is live) etc. My raw FPS increased a bit, but I saw most of the improvement in the perceived smoothness of the game, which I think comes from the fact that this addon made the ingame performance more consistent (more consistent FPS & frametimes,... ). The potential of this addon is amazing, but there is something that bothers me a little bit about it. Before I was playing Guild Wars 2 with the D912pxy addon, I used Windowed Fullscreen/Borderless Windowed to remove any potential screen tearing. After I installed the addon, I noticed that, even though I was running Windowed Fullscreen like before (which the addon recommends as well), there was some screen tearing. At first I thought as long as it is minor, I can look past it, but the screen tearing was quite noticeable and I would like to ask the Guild Wars 2 forums, do you experience the same or does one of you have advice/a tip/a setting or configuration that would solve this problem? Did I overlook something in the setup/settings of the program perhaps? (As a sidenote, all my drivers are up-to-date and every component is working as intended:D) Thanks in advance! Link to comment Share on other sites More sharing options...
Hannelore.8153 Posted December 21, 2020 Share Posted December 21, 2020 Turning on Triple Buffering in your driver configuration will help. Make sure vsync in the game is off, though. Link to comment Share on other sites More sharing options...
Ashantara.8731 Posted December 22, 2020 Share Posted December 22, 2020 > @"Hannelore.8153" said: > Turning on Triple Buffering in your driver configuration will help. Make sure vsync in the game is off, though. Triple Buffering is meant to be used _in combination_ with VSync, so it makes no sense to turn it on when you are not using VSync. My advice: turn both on. Triple Buffering in your nVidia settings (with VSync being set to "Application-controlled"), and VSync in-game. Link to comment Share on other sites More sharing options...
Mack.3045 Posted December 22, 2020 Share Posted December 22, 2020 > @"Speedylord.2798" said: > Hello again :)! > > I've been interested in using the D912pxy addon for a long time now and have recently tried it out for the first time via the Guild Wars 2 Addon Manager (great tool btw!). I must say it's a pretty neat addon! I'm running a competent gaming system (an i7-9750H with 6 cores 12 threads clocked at 4Ghz and a GTX1660 Ti 6GB mobile GPU), and even though I was running the game pretty smoothly already, performance for free is always welcome right:D? > > From my observations the addon especially helped in 'heavy' areas like Divinity's Reach (especially now that Wintersday is live) etc. My raw FPS increased a bit, but I saw most of the improvement in the perceived smoothness of the game, which I think comes from the fact that this addon made the ingame performance more consistent (more consistent FPS & frametimes,... ). > > The potential of this addon is amazing, but there is something that bothers me a little bit about it. Before I was playing Guild Wars 2 with the D912pxy addon, I used Windowed Fullscreen/Borderless Windowed to remove any potential screen tearing. After I installed the addon, I noticed that, even though I was running Windowed Fullscreen like before (which the addon recommends as well), there was some screen tearing. At first I thought as long as it is minor, I can look past it, but the screen tearing was quite noticeable and I would like to ask the Guild Wars 2 forums, do you experience the same or does one of you have advice/a tip/a setting or configuration that would solve this problem? Did I overlook something in the setup/settings of the program perhaps? > > (As a sidenote, all my drivers are up-to-date and every component is working as intended:D) > > Thanks in advance! > > Hi mate. You can use a frame limiter to stop the tearing , either the internal one in the D912pxy config file or Rivatuner. Either of these will fix your issues. Set 3 frames below your monitors refresh rate for the lowest input latency. I forgot to say, triple buffering is not implemented in DX12 so using this setting is irrelevant when using the d912pxy. Link to comment Share on other sites More sharing options...
Ashantara.8731 Posted December 22, 2020 Share Posted December 22, 2020 > @"Mack.3045" said: > I forgot to say, triple buffering is not implemented in DX12 so using this setting is irrelevant when using the d912pxy. Ah, good to know. Even when the game itself _is_ DX9? Link to comment Share on other sites More sharing options...
Mack.3045 Posted December 22, 2020 Share Posted December 22, 2020 > @"Ashantara.8731" said: > > @"Mack.3045" said: > > I forgot to say, triple buffering is not implemented in DX12 so using this setting is irrelevant when using the d912pxy. > > Ah, good to know. Even when the game itself _is_ DX9? Hi :) Yes that's correct. As the game is rendered using the DirectX 12 api :) Link to comment Share on other sites More sharing options...
Ashantara.8731 Posted December 22, 2020 Share Posted December 22, 2020 > @"Mack.3045" said: > > @"Ashantara.8731" said: > > Ah, good to know. Even when the game itself _is_ DX9? > Hi :) Yes that's correct. As the game is rendered using the DirectX 12 api :) Thanks. I will keep that in mind for future applications. :) Link to comment Share on other sites More sharing options...
Infusion.7149 Posted December 22, 2020 Share Posted December 22, 2020 If D912pxy doesn't work properly you can also try dxvk. https://github.com/doitsujin/dxvk/releases/ Note: > Should be noted that d912pxy runs pretty much nothing but GW2 and cuts a lot of corners whereas dxvk is a more or less complete D3D9 implementation, so you're basically comparing apples and oranges, but it should still be competitive with Windows Dx9. ( https://github.com/doitsujin/dxvk/issues/1648 ) It's the same back-end as Steam Play / Proton on Linux : https://www.phoronix.com/scan.php?page=news_item&px=Proton-5.13-3-Released Link to comment Share on other sites More sharing options...
Mack.3045 Posted December 22, 2020 Share Posted December 22, 2020 > @"Infusion.7149" said: > If D912pxy doesn't work properly you can also try dxvk. > https://github.com/doitsujin/dxvk/releases/ > > Note: > > Should be noted that d912pxy runs pretty much nothing but GW2 and cuts a lot of corners whereas dxvk is a more or less complete D3D9 implementation, so you're basically comparing apples and oranges, but it should still be competitive with Windows Dx9. > ( https://github.com/doitsujin/dxvk/issues/1648 ) > > It's the same back-end as Steam Play / Proton on Linux : https://www.phoronix.com/scan.php?page=news_item&px=Proton-5.13-3-Released dxvk is great and i'd encourage people to try the async patch and #1582 PR applied. Here is the build here https://www.dropbox.com/s/jvsr9zzzqpsnp6o/dxvk-async-1.7.3.tar.gz?dl=0 On Windows head into environment variables and add the following line DXVK_ASYNC in the line below type 1 Then save. Having said that. For performance, the dx912pxy wins hands-down ( i've done extensive testing ) For those on mid-range and above nvidia cards there's really no-point in looking at dxvk over native dx9. Amd users may find it out-performs native dx9 in some situations Link to comment Share on other sites More sharing options...
Hannelore.8153 Posted December 24, 2020 Share Posted December 24, 2020 > @"Ashantara.8731" said: > > @"Hannelore.8153" said: > > Turning on Triple Buffering in your driver configuration will help. Make sure vsync in the game is off, though. > > Triple Buffering is meant to be used _in combination_ with VSync, so it makes no sense to turn it on when you are not using VSync. > > My advice: turn both on. Triple Buffering in your nVidia settings (with VSync being set to "Application-controlled"), and VSync in-game. Enabling Triple Buffering on AMD/NVIDIA cards enables systemic VSync automatically, as its a required component of Triple Buffering. Enabling it specifically for the game will only further hamper performance, The driver setting and the game setting for VSync are two different things. Link to comment Share on other sites More sharing options...
Ashantara.8731 Posted December 24, 2020 Share Posted December 24, 2020 > @"Hannelore.8153" said: > The driver setting and the game setting for VSync are two different things. Then why do the nVidia graphics settings give you the VSync option "Use the 3D application setting"? Link to comment Share on other sites More sharing options...
Mack.3045 Posted December 24, 2020 Share Posted December 24, 2020 > @"Hannelore.8153" said: > > @"Ashantara.8731" said: > > > @"Hannelore.8153" said: > > > Turning on Triple Buffering in your driver configuration will help. Make sure vsync in the game is off, though. > > > > Triple Buffering is meant to be used _in combination_ with VSync, so it makes no sense to turn it on when you are not using VSync. > > > > My advice: turn both on. Triple Buffering in your nVidia settings (with VSync being set to "Application-controlled"), and VSync in-game. > > Enabling Triple Buffering on AMD/NVIDIA cards enables systemic VSync automatically, as its a required component of Triple Buffering. Enabling it specifically for the game will only further hamper performance, > > The driver setting and the game setting for VSync are two different things. Hello, I'd like to point out respectfully that you're mistaken. The point of triple buffering is not having vsync on whilst having no tearing. You cannot have triple buffering and vsync at the same time. One replaces the other. With vsync you have a double frame buffer. Triple buffering is literally that, 3 frame buffers in the render pipeline. There an article written here which explains it well. https://www.anandtech.com/show/2794/3 Link to comment Share on other sites More sharing options...
Ashantara.8731 Posted December 25, 2020 Share Posted December 25, 2020 > @"Mack.3045" said: > Hello, I'd like to point out respectfully that you're mistaken. The point of triple buffering is not having vsync on whilst having no tearing. > > You cannot have triple buffering and vsync at the same time. One replaces the other. [...] Errr... Then explain _this_ to me, which has been the given information for ages: ![](https://i.imgur.com/xMWRKSz.jpg "") Link to comment Share on other sites More sharing options...
Infusion.7149 Posted December 25, 2020 Share Posted December 25, 2020 Says OpenGL only? Link to comment Share on other sites More sharing options...
Ashantara.8731 Posted December 25, 2020 Share Posted December 25, 2020 > @"Infusion.7149" said: > Says OpenGL only? [**Yes**](https://techterms.com/definition/opengl), but that means it has no effect on anything else, no? OpenGL is used in many games, not just oldtimers. Link to comment Share on other sites More sharing options...
Infusion.7149 Posted December 25, 2020 Share Posted December 25, 2020 This is a directx 9 game. Even if you use a conversion from dx9 to dx12 or vulkan it isn't openGL. Link to comment Share on other sites More sharing options...
Mack.3045 Posted December 26, 2020 Share Posted December 26, 2020 Triple buffering will not work in either DX12 or Vulkan as the api decides on the frame buffer / swap chain. As to the Nvidia setting, it's only relevant to Opengl as others have mentioned. I'm unsure why they state vsync is switched on by default with that option. The article link I posted gives an explanation. Link to comment Share on other sites More sharing options...
KrHome.1920 Posted December 26, 2020 Share Posted December 26, 2020 There is not one single hint in this thread, that is technically correct. - Triple buffering has nothing to do with vsync being enabled or disabled. Triple buffering adds another frame buffer to the render ahead queue of the rendering pieline, which results in always being a completed frame ready to be displayed on the screen, no matter when the display refresh rate asks for it. This does of course only make sense when vsync is enabled, as this synchronizes the gpu refresh with the monitor refresh. If you enable triple buffering without vsync, then you add an additional frame buffer for no reason, which just increases input lag and vram usage (for the additionally stored frame). Btw. you can not force vsync and triple buffering in modern apis like dx12 via the gpu driver. The game engine has full control over it. - Don't (!) limit you fps 3 frames below your monitor refrsh rate - e.g. 57 fps @ 60Hz. This will just increase the tearing and a tear will move from the top of the screen to the bottom all the time. That's super annoying. - The best way to get rid of all the vsync issues, is buying an adaptive sync monitor and never look back. - Since the OP plays the game on a laptop a workaround to get rid of tearing would be enabling fast sync (enhanced sync for amd users) in the driver, which displays the last rendered frame at the next refresh cycle of the sceen. But also this has its flaws: 1) fast sync does only work above 36 fps (below it is tured off) and it tends to stutter even more than vsync. But I would at least give it a try. Link to comment Share on other sites More sharing options...
Little Howl.5231 Posted December 26, 2020 Share Posted December 26, 2020 > @"KrHome.1920" said: > There is not one single hint in this thread, that is technically correct. > > - Triple buffering has nothing to do with vsync being enabled or disabled. Triple buffering adds another frame buffer to the render ahead queue of the rendering pieline, which results in always being a completed frame ready to be displayed on the screen, no matter when the display refresh rate asks for it. This does of course only make sense when vsync is enabled, as this synchronizes the gpu refresh with the monitor refresh. If you enable triple buffering without vsync, then you add an additional frame buffer for no reason, which just increases input lag and vram usage (for the additionally stored frame). Btw. you can not force vsync and triple buffering in modern apis like dx12 via the gpu driver. The game engine has full control over it. > - Don't (!) limit you fps 3 frames below your monitor refrsh rate - e.g. 57 fps @ 60Hz. This will just increase the tearing and a tear will move from the top of the screen to the bottom all the time. That's super annoying. > - The best way to get rid of all the vsync issues, is buying an adaptive sync monitor and never look back. > - Since the OP plays the game on a laptop a workaround to get rid of tearing would be enabling fast sync (enhanced sync for amd users) in the driver, which displays the last rendered frame at the next refresh cycle of the sceen. But also this has its flaws: 1) fast sync does only work above 36 fps (below it is tured off) and it tends to stutter even more than vsync. But I would at least give it a try. People already covered what you've suggested except the last two points. Technically that is. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now