Battlefield V reflection tech *spawn

Agree about SSR > RT, but cubemaps are used if the material is rough and would require too much rays. (RT has no fails, so cubemaps are not a fallback here in contrast to traditional SSR)
This is a very disappointing but interesting limitation. Wrong cube map reflections at shallow angles are the worst shading artifact since PBS (missing occlusion causes a rim lighting effect everywhere). So i was very disappointed RTX reflections can't fix that.

I think the problem is mainly this: Because diffuse materials become reflective only at very shallow angles, we see the artifact mostly at the silhouette of objects. But this also means there are very few neighboring pixels that could be used for denoising, so using 1 ray per pixel + denoising does not work well, and many rays are no option.

However, for BFV they likely made this decision mainly for performance reasons and they did not even try to address this. Exodus on the other hand seems to use diffuse materials for everything, but they violate PBR and shallow angles do not become reflective at all i guess.
The latter seems the way to go for now, and it's interesting how the use of 'god sent accurate RT' forces us to violate physics laws we have obeyed before that :)
I'm quite sure they do not trace sky sphere made with polygons.
Wouldn't it be much faster to get miss and sample cubemap from ray direction? (Although with RTX you could do this with custom ray/sphere intersection code. I'm doubtful this would be faster.)

Agreed that after certain roughness they use normal cubemaps as fallback.

Haven't seen exodus, apparently I do have catching up to do, thanks. :)
 
Should give nice savings in shading and ray-budget.
But that's clearly not the case with Battlefield V's hybrid approach:
This helps free up rays, which DICE’s variable-rate ray tracing system uses to enhance quality elsewhere in the scene. Variable-rate ray tracing makes best use of available ray budgets, so this technique doesn’t impact performance in the tests we’ve run. This technique is not a factor in the performance improvements that came with the Chapter 1: Overture update.
It seems there is a fixed number of rays, which can be distributed dynamically on a per-tile basis between different surfaces (rough surfaces would certainly receive fewer rays). The hybrid approach in BF V doesn't improve performance as said above, instead, it helps to improve image quality by allocating more rays out of a fixed budget for non-SSR areas.

So i was very disappointed RTX reflections can't fix that.
Have you tried the game with DXR Ultra? It seems you've not, because Ultra option fixes exactly the issue you described
 
Have you tried the game with DXR Ultra? It seems you've not, because Ultra option fixes exactly the issue you described

No there is no fix, see the settings numbers given from NV forum:

Low applies ray tracing to materials with 0.9 smoothness or higher, and sets maximum ray count to 15.0 percent of the total number of screen pixels.

Medium applies ray tracing to materials with 0.9 smoothness or higher, and sets maximum ray count to 23.3 percent of the total number of screen pixels.

High applies ray tracing to materials with 0.5 smoothness or higher, and sets maximum ray count to 31.6 percent of the total number of screen pixels.

Ultra applies ray tracing to materials with 0.5 smoothness or higher, and sets maximum ray count to 40.0 percent of the total number of screen pixels.



No reflections on materials with roughness below 0.5 (so ANY natural non man made material except water). Rougher material requires much more rays for reflection than a smooth one. (diffuse hemi sphere vs. specular narrow cone)
For offline rendering one might use 4000 ray paths for noise free results. Depending on material you bundle 100 rays mainly at specular direction and the rest is distributed more evenly over the half sphere (importance sampling).

This just said as a remainder of where we are now, with BFV being unable to trace a single ray per pixel, not even thinking about a path requiring about ten rays in order to capture complex indirect lighting.
So my disappointment is not justified, but the diffuse reflection limitation was not obvious to me at first.


If you want to enjoy cool reflections in BFV, and the joy is more important than understanding limitations, stop reading further! You may end up seeing more issues and wrong things than cool things!
I'm serious with that warning - it's like spoiling the end of each movie you'll see in the next years!!! :)


From a marketing perspective we can say: 'Sharp reflections are more impressive - gamers have never seen this before. Let's show them just that so they see what a difference RTX can make. And hey, make stuff a bit more reflective than it should be, let's exaggerate our achievement!'
But if our goal is photorealistic rendering, unfortunately the opposite us true: Diffuse reflection is most important, although gamers will be unable to see a clear difference to older games. If we achieve it, regular people will not percept WHY it looks real finally... it's much easier to sell them sharp reflections at the moment.

Your comment indicates you are not able to see those issues yet - you believe all reflections are correct at highest setting. But this is wrong even if we ignore missing dynamic GI.
In fact most reflections come from static cube maps. They are not the kind of sharp reflections they have sold you, but still they are reflections and they are all wrong.
The error is most noticeable in indoor environments and surfaces seen at shallow angles. Often such surfaces appear brighter than they should be because the cube map reflections are not occluded by something like an object or even a wall. Stuff looks as if it would emit a bit of light.
Almost any game using PBS has this artifact. Mostly visible in UE4 games but Frostbite is just the same here. BFV is full of it. Now have fun spotting more and more cases of that... soon you will believe me ;) Consolation: You did recognize this all the time before, just not consciously. (Sorry if i sound overbearing!)

Remedy does some impressive work here. See for example GI in Control, and Quantum Break had a nice hack too. Static but very good.
 
But if our goal is photorealistic rendering, unfortunately the opposite us true: Diffuse reflection is most important, although gamers will be unable to see a clear difference to older games.
I disagree, as offline tracing has shown that photorealistic results can be achieved with separate 'diffuse lighting' and 'specular lighting/reflections', so you don't need to accurately sample 100 rays per pixel and can cast just a few and average them out for diffuse lighting. It won't be 'real' but it will be pretty indistinguishable.

Realtime game tracing is going to need lighting, shadowing, and reflection/refraction, which can be dealt with via whatever means and distinctions. That'll be good enough and we won't need to hit pure surface sampling with suitable ray scattering to get the results we want. We are always going to have a very finite number of rays to work with, so we have to use that budget very efficiently, but thankfully visuals won't suffer massively with such shortcuts.
 
I disagree, as offline tracing has shown that photorealistic results can be achieved with separate 'diffuse lighting' and 'specular lighting/reflections', so you don't need to accurately sample 100 rays per pixel and can cast just a few and average them out for diffuse lighting. It won't be 'real' but it will be pretty indistinguishable.
Agree with that - separating diffuse from specular is common everywhere not just in games, but the example of distributing more rays towards eye reflection vector depending on smoothness is a nice model to imagine the problem without the need for that separation. The exact number of necessary rays is always debatable, but the ratio of diffuse / specular rays depends on roughness. Real life scenes are mostly diffuse, so this is more important to get right on the long run. Problem: You can approximate x narrow rays with just one ray quite well, but if x rays are distributed randomly over half of the entire scene the approximation is much worse. (Exodus does not look real.)

Realtime game tracing is going to need lighting, shadowing, and reflection/refraction, which can be dealt with via whatever means and distinctions. That'll be good enough
Currently every game shown has just one of those features (except Atomic Heart with shadows and reflections). I do not expect so much progress here just by 'utilizing the budget efficiently'.
I believe a much larger step towards photorealism is possible with current hardware, but RTX is just a minor, even optional part of my personal vision.
 
http://screenshotcomparison.com/comparison/126653
http://screenshotcomparison.com/comparison/126654
http://screenshotcomparison.com/comparison/126655
http://screenshotcomparison.com/comparison/126656
http://screenshotcomparison.com/comparison/126657
http://screenshotcomparison.com/comparison/126658
http://screenshotcomparison.com/comparison/126659
http://screenshotcomparison.com/comparison/126660
http://screenshotcomparison.com/comparison/126661
http://screenshotcomparison.com/comparison/126662
http://screenshotcomparison.com/comparison/126663
http://screenshotcomparison.com/comparison/126664
This is the level, where the lack of local occlusion is the most prominent.
As can be seen on the screens, the occlusion is clearly here with DXR Ultra, while without it, the same cubemap is applied for all objects with "rim lighting" silhouettes.
Actually, with Ultra settings, RTX is applied to relatively rough materials, such as bricks, paving stones, roads and so on, hence almost every corner of the game is affected by the RT, not just a few materials.
 
No there is no fix, see the settings numbers given from NV forum:

Low applies ray tracing to materials with 0.9 smoothness or higher, and sets maximum ray count to 15.0 percent of the total number of screen pixels.

Medium applies ray tracing to materials with 0.9 smoothness or higher, and sets maximum ray count to 23.3 percent of the total number of screen pixels.

High applies ray tracing to materials with 0.5 smoothness or higher, and sets maximum ray count to 31.6 percent of the total number of screen pixels.

Ultra applies ray tracing to materials with 0.5 smoothness or higher, and sets maximum ray count to 40.0 percent of the total number of screen pixels.



No reflections on materials with roughness below 0.5 (so ANY natural non man made material except water). Rougher material requires much more rays for reflection than a smooth one. (diffuse hemi sphere vs. specular narrow cone)
For offline rendering one might use 4000 ray paths for noise free results. Depending on material you bundle 100 rays mainly at specular direction and the rest is distributed more evenly over the half sphere (importance sampling).

This just said as a remainder of where we are now, with BFV being unable to trace a single ray per pixel, not even thinking about a path requiring about ten rays in order to capture complex indirect lighting.
So my disappointment is not justified, but the diffuse reflection limitation was not obvious to me at first.


If you want to enjoy cool reflections in BFV, and the joy is more important than understanding limitations, stop reading further! You may end up seeing more issues and wrong things than cool things!
I'm serious with that warning - it's like spoiling the end of each movie you'll see in the next years!!! :)


From a marketing perspective we can say: 'Sharp reflections are more impressive - gamers have never seen this before. Let's show them just that so they see what a difference RTX can make. And hey, make stuff a bit more reflective than it should be, let's exaggerate our achievement!'
But if our goal is photorealistic rendering, unfortunately the opposite us true: Diffuse reflection is most important, although gamers will be unable to see a clear difference to older games. If we achieve it, regular people will not percept WHY it looks real finally... it's much easier to sell them sharp reflections at the moment.

Your comment indicates you are not able to see those issues yet - you believe all reflections are correct at highest setting. But this is wrong even if we ignore missing dynamic GI.
In fact most reflections come from static cube maps. They are not the kind of sharp reflections they have sold you, but still they are reflections and they are all wrong.
The error is most noticeable in indoor environments and surfaces seen at shallow angles. Often such surfaces appear brighter than they should be because the cube map reflections are not occluded by something like an object or even a wall. Stuff looks as if it would emit a bit of light.
Almost any game using PBS has this artifact. Mostly visible in UE4 games but Frostbite is just the same here. BFV is full of it. Now have fun spotting more and more cases of that... soon you will believe me ;) Consolation: You did recognize this all the time before, just not consciously. (Sorry if i sound overbearing!)

Remedy does some impressive work here. See for example GI in Control, and Quantum Break had a nice hack too. Static but very good.
It's not just the baked GI volume that gives remedy's games such good specular occlusion. They also compute a dynamic specular occlusion mask in screen space. Much like SSAO, it's a very dirty approximation, but makes the scene look way more natural than without it, but not without the as artifacts... Of course you can't correctly calculate an average occlusion mask for the specular component of all lights and all directions and distances, even if it were not done in screen space, but the approximation is good enough for a visually pleasing effect for near occluders.
I am 99% sure RDR2 is doing the same thing, going off of how it looks.
As much of a hack as this is, it makes everything look oh so much better. I'm surprised more games have not started doing it yet.
 
Rougher material requires much more rays for reflection than a smooth one
You don't need to cast thouthands of rays for specular occlusion on rough materials, this will result into low frequency reflections anyway (that's why it is perfect for low frequency cone tracing), so all you need is just a sparse occlusion information, spatial filtering, clamping and temporal accumulation will take care of the rest.
 
Last edited:
You don't need to cast thouthands of rays for specular occlusion on rough materials, this will result into low frequency reflections anyway (that's why it is perfect for low frequency cone tracing), so all you need is just a sparse occlusion information, spatial filtering, clamping and temporal accumulation will take care of the rest.
That's true when surfaces are big enough for them to cover plenty pixels for the spacial filter to sample from. Small detailed geometry though, can't be filtered, so it can look noisy, and if you are unluky, sparkly (fireflies). If you have less than a ray per pixel, you can be in even worse situations. What does the spacial filter do when no rays whatsoever have been spawned from any place near the pixel it's resolving. What's the fallback?
 
This is the level, where the lack of local occlusion is the most prominent.
Agree it helps a lot here, but it's all wet rocks, and the wetness makes them smooth. Also it's an outdoor environment which always is just too uniform to show the problem. Outdoor games are lucky here.
I've seen it only indoors it the videos. But i did not pay much attention on the detail setting, so i admit it may help more than i expect? (and sorry about the overbearing tone again!)

this is a hack, but it works.
Yep, but denoising is a hack too. Understanding the limitations is as important as understanding the possibilities. I'm still in this process and not working on this myself that's quite difficult...
I made the thousands of rays example regarding offline rendering without denoising, not realtime. However, RTX works only because of progress in denoising, so we could say it is hardware acceleration to support a hack :)

nobody will spot a difference.
But anybody will still spot the difference between a real life video and a video game.
Realtime gfx has a long history of just trickery and fakery, but i'm afraid at some point we either do it correctly or it does not work. Figuring out which kinds of hacks are more acceptable than others is hard already.



They also compute a dynamic specular occlusion mask in screen space.
But they have improved: https://users.aalto.fi/~silvena4/Projects/RTGI/index.html
I only assume they use this in Control. I did not understand the paper by just reading once, but i guess it stores which regions of probes contribute how far, and they update the probes with direct light samples from the scene? Good detail with little memory.
 
Actually, with Ultra settings, RTX is applied to relatively rough materials, such as bricks, paving stones, roads and so on, hence almost every corner of the game is affected by the RT, not just a few materials.
I have just watched the video from page 1 again. Only few indoor scenes, but i did not see the cube map issue i have meant. More likely there is a lot if unoccluded direct lighting going on, which is another problem and i have mistaken that before probably.
Also reflections are exaggerated in brightness and sharpness in general, which hurts my personal eyes in the same way - mistaken that too.

Technically, with a cutoff of 0.5 the cubemap issue must be still present a lot, even if materials receive RT in smoother spots, but BFV is just the wrong game to look for that it seems. Huge open world, destruction... there are too much other lighting issues due to the necessary compromises.

But i take my claim back - you may be right and 0.5 could 'fix' it good enough for perception.
 
Its a online mp game with up to 64 slots. RT added in the last moment it seems. That and its the first title using it, on first gen rt hw. For all its faults bfv doesnt suffer too much in performance and the results are there. Perhaps this can be seen as checkerboard 4k?
We should learn more however when more games with rt arrive.
 
What's your purpose in stating the obvious? How does it contribute to the discussion about how to best use raytracing hardware or what techniques and compromises we're seeing in BFV? In what way is your post technical discussion on rendering techniques and APIs?
 
What's your purpose in stating the obvious? How does it contribute to the discussion about how to best use raytracing hardware or what techniques and compromises we're seeing in BFV? In what way is your post technical discussion on rendering techniques and APIs?

In about two years when Nvidia/AMD come with new GPU's they probally will be more advanced and/or faster in their RT tech, surely Nvidia's. By then we can fault the BFV implementation of today more then now.

Context matters.

Yes its that what i meant, people are trying to find technical artefacts and errors, but im glad to see advancements like this in games, and for what it is, this 'semi-RT' implementation isnt that bad at all. I feel its like the faux 4k on mid gen consoles, their first 4k experience isnt really 4k but its a first step.

I played BFV myself, on a 2080Ti setup (not mine, i wish it was :p), and if i compare it to a version running without DXR, and in special certain maps, its quit a huge difference imo. I wouldnt see the need to play @close to 200FPS either, would prefer DXR enabled in that case.

I have before commented technical discussions in context, why is that a problem with RT? I feel that RT is a very sensitiv subject on this forum, why is that?
 
FFS - it's a technical discussion about on a technical forum on a technical board for technology enthusiasts. We know the effing context - if we were too dumb to work it out ourselves, it's been repeated a hundred times already.

Let the people who want to talk tech actually talk about it without having to constantly remind them of the obvious. It's not about finding fault, but discussing how the tech works. If you can't stomach people identifying the limits of the first-gen technology, stay out of technical discussions. Feel free to post how awesome RT games look in the game threads, and how excited you are about raytracing in general graphics discussion threads.
 
Last edited:
Back
Top