Jump to content

Confused about the rendering pipeline DCS uses. Forward vs Deferred?


Recommended Posts

Posted

So sometime ago, ED introduced deferred rendering, which allows for more effecient application of lighting across the scene. This allows lighting to be calculated on the final render rather than waste cycles calculating lighting for geometry that has been occluded by objects that are rendered further along in the pipeline.

 

Forward rendering -> Good performance as you render everything in one pass. Pixel shader executed once per pixel plotted; lots of overdraw and heavy pixel shaders kill you.

 

Deferred rendering -> Only once have the impact of having lots of geometry as you render all of it just once. Also reduce the impact of heavy pixel shaders as you render each screen pixel once, overdraw no longer being relevant for the heavyness of your pixel shader

 

So I am confused. Does DCS switch to forward rendering in VR (as recommended) or does it remain using deferred rendering which is not advised?

 

Also MSAA (Multi-Sample AA) is NOT compatible with deferred rendering. So if deferred is the default, why is MSAA still an option in graphics settings? Could we get some clarification?

 

And if post processing such as bloom and ambient occulusion are going to be applied how is this going to be approached for the recommended forward rendering pipeline that VR should use?

 

Or it could be the case that deferred has been quietly abandoned?

Posted

IIRC The Current DX11 Engine uses Deferred.

 

ED would have to Confirm.

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Posted
So sometime ago, ED introduced deferred rendering, which allows for more effecient application of lighting across the scene. This allows lighting to be calculated on the final render rather than waste cycles calculating lighting for geometry that has been occluded by objects that are rendered further along in the pipeline.

 

Forward rendering -> Good performance as you render everything in one pass. Pixel shader executed once per pixel plotted; lots of overdraw and heavy pixel shaders kill you.

 

Deferred rendering -> Only once have the impact of having lots of geometry as you render all of it just once. Also reduce the impact of heavy pixel shaders as you render each screen pixel once, overdraw no longer being relevant for the heavyness of your pixel shader

 

So I am confused. Does DCS switch to forward rendering in VR (as recommended) or does it remain using deferred rendering which is not advised?

 

Also MSAA (Multi-Sample AA) is NOT compatible with deferred rendering. So if deferred is the default, why is MSAA still an option in graphics settings? Could we get some clarification?

 

And if post processing such as bloom and ambient occulusion are going to be applied how is this going to be approached for the recommended forward rendering pipeline that VR should use?

 

Or it could be the case that deferred has been quietly abandoned?

 

 

everything that has been officially stated is that dcs post 1.5 runs in deferred shading for both VR and desktop. you would spot a difference in lighting etc. if vr would use a different pipeline.

however, you've got a point with the MSAA. it should indeed not be possible. my guess is, that it is simply something else (maybe SSAA?), but that they did not bother to change the label...

My improved* wishlist after a decade with DCS ⭐⭐⭐⭐🌟

*now with 17% more wishes compared to the original

Posted
everything that has been officially stated is that dcs post 1.5 runs in deferred shading for both VR and desktop. you would spot a difference in lighting etc. if vr would use a different pipeline.

however, you've got a point with the MSAA. it should indeed not be possible. my guess is, that it is simply something else (maybe SSAA?), but that they did not bother to change the label...

 

Then there must be performance issues with VR because of the deferred set up. Performing lighting caculations twice (once per eye) must be taxing as well as doing the same for post processing effects

Posted (edited)
Then there must be performance issues with VR because of the deferred set up. Performing lighting caculations twice (once per eye) must be taxing as well as doing the same for post processing effects

 

it surely is more taxing, yes and you can see that if you compare desktop to vr performance. it is roughly (!) in line with what i would expect.

since dcs is quite often cpu/ram limited it somewhat gets away with deferred for VR, but it is maybe not ideal.

 

the thing that i don't understand is, that they have not yet managed to really make use of the strengths of deferred shading with always only having one pixel light (?) in the scene at all times (moon / sun). when they eventually finish the lighting overhaul (WIP since version 2.0 or something) the benefits of deferred will show more and it will be very difficult to argue for going back to forward rendering - even for VR...

Edited by twistking

My improved* wishlist after a decade with DCS ⭐⭐⭐⭐🌟

*now with 17% more wishes compared to the original

Posted

it's an interesting point you raise by the way. we really know nothing about the engine that runs dcs and that makes it harder to understand performance bottlenecks etc.

 

it would be very helpful to maybe get an interview with one of the engine programmers in the newsletter to get a bit more technical insight about how things work right now and how they are supposed to work in the future...

My improved* wishlist after a decade with DCS ⭐⭐⭐⭐🌟

*now with 17% more wishes compared to the original

Posted
it surely is more taxing, yes and you can see that if you compare desktop to vr performance. it is roughly (!) in line with what i would expect.

since dcs is quite often cpu/ram limited it somewhat gets away with deferred for VR, but it is maybe not ideal.

 

the thing that i don't understand is, that they have not yet managed to really make use of the strengths of deferred shading with always only having one pixel light (?) in the scene at all times (moon / sun). when they eventually finish the lighting overhaul (WIP since version 2.0 or something) the benefits of deferred will show more and it will be very difficult to argue for going back to forward rendering - even for VR...

 

Yes in deferred lighting you can have as many lights as you want since it works on the pixels using the depth information from the render buffer. We should have amazing lighting but we don't. We still have baked airfield lighting.

 

Deferreds advantages start to disappear the higher resolution you go though as it has to calculate for more pixels.

Posted (edited)
I guess that's where single pass stereo would be nice to have...

 

i think there is a command-line that activates an experimental single pass culling for VR. I think it does not work correctly at the moment, but it would be a step in that direction. I'm not sure if single pass culling is not even the same as single pass stereo. Maybe you could also do shadows in a single pass, but everything else would probably need a second pass for the scene to be physically correct, or do i get this wrong?

Edited by twistking

My improved* wishlist after a decade with DCS ⭐⭐⭐⭐🌟

*now with 17% more wishes compared to the original

Posted

So they must be using more than one light source???

 

Watch the 2019 and beyond vid (or maybe 2018 and beyond??) and there are ground based missiles that generate their own light as they fire... Illuminating the ground. Or I don't understand the subject which is quite possible :).

Nvidia RTX3080 (HP Reverb), AMD 3800x

Asus Prime X570P, 64GB G-Skill RipJaw 3600

Saitek X-65F and Fanatec Club-Sport Pedals (Using VJoy and Gremlin to remap Throttle and Clutch into a Rudder axis)

Posted
So they must be using more than one light source???

 

Watch the 2019 and beyond vid (or maybe 2018 and beyond??) and there are ground based missiles that generate their own light as they fire... Illuminating the ground. Or I don't understand the subject which is quite possible :).

 

different type of lights. where deferred shading "shines" is pixel lights (though i'm not sure that this is the correct term technically), a.k.a. light sources that can cast shadows and can interact with pbr shaders correctly etc.

 

There are other ways of representing a light source in computer graphics, but those are simpler, less flexible perhaps, but most importantly they can be done on deferred pipelines and forward rendering pipelines with similar cost, i think.

 

again, i'm not a programmer, so my terminology might not be spot on, but i think the concept described should be more or less correct :smilewink:

My improved* wishlist after a decade with DCS ⭐⭐⭐⭐🌟

*now with 17% more wishes compared to the original

Posted
it's an interesting point you raise by the way. we really know nothing about the engine that runs dcs and that makes it harder to understand performance bottlenecks etc.

 

it would be very helpful to maybe get an interview with one of the engine programmers in the newsletter to get a bit more technical insight about how things work right now and how they are supposed to work in the future...

 

 

Looking at the comments in the game' system files, most of those programmers apparently already quit ED long time ago and had not documented their code properly. :music_whistling:

Banned by cunts.

 

apache01.png

Posted
i think there is a command-line that activates an experimental single pass culling for VR. I think it does not work correctly at the moment, but it would be a step in that direction. I'm not sure if single pass culling is not even the same as single pass stereo. Maybe you could also do shadows in a single pass, but everything else would probably need a second pass for the scene to be physically correct, or do i get this wrong?

 

 

options.graphics.stereo_mode_use_shared_parser = true

 

 

It does seem to better performance a little, but for some reason, when the TGP feed is on in the MFD, the performance starts crawling.

Banned by cunts.

 

apache01.png

  • ED Team
Posted
options.graphics.stereo_mode_use_shared_parser = true

 

 

It does seem to better performance a little, but for some reason, when the TGP feed is on in the MFD, the performance starts crawling.

 

 

stereo_mode_use_shared_parser is W.I.P and not ready for public use, there will be side effects.

smallCATPILOT.PNG.04bbece1b27ff1b2c193b174ec410fc0.PNG

Forum rules - DCS Crashing? Try this first - Cleanup and Repair - Discord BIGNEWY#8703 - Youtube - Patch Status

Windows 11, NVIDIA MSI RTX 3090, Intel® i9-10900K 3.70GHz, 5.30GHz Turbo, Corsair Hydro Series H150i Pro, 64GB DDR @3200, ASUS ROG Strix Z490-F Gaming, PIMAX Crystal

Posted (edited)
options.graphics.stereo_mode_use_shared_parser = true

 

It does seem to better performance a little, but for some reason, when the TGP feed is on in the MFD, the performance starts crawling.

 

that's what i meant. thanks for the info!

 

stereo_mode_use_shared_parser is W.I.P and not ready for public use, there will be side effects.

 

roger that. just have it ready when i make the jump to vr fnally;) can you clarify if this is indeed one-pass-stereo, or something in that direction?

Edited by twistking

My improved* wishlist after a decade with DCS ⭐⭐⭐⭐🌟

*now with 17% more wishes compared to the original

  • ED Team
Posted
that's what i meant. thanks for the info!

 

 

 

roger that. just have it ready when i make the jump to vr fnally;) can you clarify if this is indeed one-pass-stereo, or something in that direction?

 

 

Yes that is my understanding of it.

 

thanks

smallCATPILOT.PNG.04bbece1b27ff1b2c193b174ec410fc0.PNG

Forum rules - DCS Crashing? Try this first - Cleanup and Repair - Discord BIGNEWY#8703 - Youtube - Patch Status

Windows 11, NVIDIA MSI RTX 3090, Intel® i9-10900K 3.70GHz, 5.30GHz Turbo, Corsair Hydro Series H150i Pro, 64GB DDR @3200, ASUS ROG Strix Z490-F Gaming, PIMAX Crystal

Posted

Also note, MSAA works with Deferred Shading, but Deferred Shading + MSAA has a Performance Penalty. Which is why other engines use Deferred Shading + FXAA or other AA Methods.

 

For Me, I get better Performance w/ MSAA off and just brute forcing a 4K Oversample in AMD's drivers.

Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2),

ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9)

3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs

Posted
Also note, MSAA works with Deferred Shading, but Deferred Shading + MSAA has a Performance Penalty. Which is why other engines use Deferred Shading + FXAA or other AA Methods.

 

For Me, I get better Performance w/ MSAA off and just brute forcing a 4K Oversample in AMD's drivers.

Yes, but in VR you get insane shimmering (especially around cities) without MSAA, which basically makes turning that ON a *must*.

Spoiler

Ryzen 9 5900X | 64GB G.Skill TridentZ 3600 | Asus ProArt RTX 4080 Super | ASUS ROG Strix X570-E GAMING | Samsung 990Pro 2TB + 960Pro 1TB NMVe | VR: Varjo Aero
Pro Flight Trainer Puma | VIRPIL MT-50CM2 grip on VPForce Rhino with Z-curve extension | Virpil CM3 throttle | Virpil CP2 + 3 | FSSB R3L | VPC Rotor TCS Plus base with SharKa-50 grip | Everything mounted on Monstertech MFC-1 | TPR rudder pedals

OpenXR | PD 1.0 | 100% render resolution | DCS graphics settings

 

  • ED Team
Posted
Yes, but in VR you get insane shimmering (especially around cities) without MSAA, which basically makes turning that ON a *must*.

 

It can be distracting for sure, personal preference for me is to have MSAA off and I live with a little shimmering. Probably not as bad on a higher res display, making it more bearable.

smallCATPILOT.PNG.04bbece1b27ff1b2c193b174ec410fc0.PNG

Forum rules - DCS Crashing? Try this first - Cleanup and Repair - Discord BIGNEWY#8703 - Youtube - Patch Status

Windows 11, NVIDIA MSI RTX 3090, Intel® i9-10900K 3.70GHz, 5.30GHz Turbo, Corsair Hydro Series H150i Pro, 64GB DDR @3200, ASUS ROG Strix Z490-F Gaming, PIMAX Crystal

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...