https://techreport.com/review/34267/examining-the-performance-of-nvidia-rtx-effects-in-battlefield-vYou can't ray-trace the whole scene, so they only use it to selectively apply better reflections to certain objects. That's probably the most sensible way to use ray-tracing at this point in time. And it does avoid the "half ultra, half medium" problem that could result from a lot of dumber ways to selectively use RTX.
What they're probably doing is a painter's algorithm type of thing, where it first rasterizes everything, figuring out which objects will ultimately be in front for every pixel. It flags the ones that need reflections, while rendering the final pixel for everything else. And then it can go back and ray-trace only the pixels where it knows it has to do something to determine reflected color.
In all, that's a pretty sensible way to selectively apply ray-tracing in a mostly rasterized game. You could do worse, and I'm sure we'll see a lot of games that actually do do worse.
It also cuts your frame rates by about half. For improved reflections of puddles. Or at least in the ones that are close to you, but not the ones further away, as that would be too expensive. And that's the "RTX low" setting; more aggressive use of it brings far larger cuts to frame rates.
Overall, it's better than I was expecting. As negative as this post might sound, I am genuinely impressed with what they did. If you've never looked closely at them, rasterized lighting effects are worse than you think, and ray-tracing really does fix it. But I'm not impressed enough to plan on turning it on in games I play personally for another decade or so.
Comments
My WW2 era bionic arm will look amazing with this!
But as it is those are still way too expensive puddles.
But using ray-tracing purely for reflections opens up far more interesting possibilities. Among other things, that allows you to control the performance hit. If an entire scene only has to compute reflections of ten thousand pixels, the performance hit could be modest.
Still, for a scene to have only a single reflective object, and for that object to be small, doesn't necessarily mean it's only a minor effect. For example, some games will have quest items that you're supposed to find in the world, and they glow or outline or put an icon on your minimap or whatever to mark them.
What if instead, you have a quest to go find some orb, and the way that you figure out what the quest item is is that the orb is reflective?
What if there are rooms with small mirrors on the walls, but one of the mirrors has a fake reflection, and that's how you tell which one has a secret panel behind it?
Or what if a boss has some super attack that you can only protect one party member against, and telegraphs which party member he's going to target by having his armor reflect the image of that party member and no others?
You categorically cannot do that with rasterization. But you could do things like that with ray-tracing, and with a performance hit that isn't that large. And rather than looking at your mini-map or at a wiki or whatever, that would force players to actually look at the game world.
Ray-tracing to make a small handful of objects reflective opens up a lot of possibilities. And it could be done with acceptable performance on Turing GPUs available today. There will need to be some measures in place to ensure that your budget of 10000 reflective pixels doesn't allow players to zoom in on a reflective object and now need a million reflective pixels per frame.
Furthermore, Nvidia is doing this the right way for the right reasons. RTX isn't some proprietary API like CUDA or GPU PhysX or G-Sync whose primary reason to exist is to break compatibility. It's implemented in DirectX and they're working on adding it to Vulkan, which means that AMD could readily support it without it necessarily becoming the competitive disadvantage of a GameWorks situation where the code is written for the express purpose of crippling performance on AMD.
So of course a lot of games will probably only use ray-tracing to make selected a handful of shadows look better. But the potential for this to be a cool feature sooner rather than later is there--far more so than I'd have thought two days ago.
Brenics ~ Just to point out I do believe Chris Roberts is going down as the man who cheated backers and took down crowdfunding for gaming.
Brenics ~ Just to point out I do believe Chris Roberts is going down as the man who cheated backers and took down crowdfunding for gaming.
But judging by the OP, it sounds like it's highly experimental and requires a lot of tweaking on the side of the developer.
I was thinking about RTX from a developer's perspective. It could allow smaller studios save a lot of time on setting up reflection systems and artificial lighting. In theory, the engine could understand what your materials are and completely bypass the need for spending a lots of time on tweaking each small scene to get the lighting right. Is this sort of an implementation still years away?
The problem is that ray-tracing intrinsically runs slow and cannot be made to run fast. In contrast, it's easy to make rasterization run fast. That's why games use rasterization, even though everyone who has ever seriously looked at them unanimously agrees that ray-tracing looks better. It's also why 3D rendered movies where rendering at a rate of a frame per hour is acceptable use ray-tracing and not rasterization.
Much like how physics engines and shadows and other nifty special effects got baked into most major game engines... that's how those techs went main stream.
If raytracing support gets baked into Unreal/Unity/Crytek, it may see widespread hardware support. If it goes the way of TressFX, TXAA, TrueAudio, or some other semi-proprietary, then it will be one more marketing bulletpoint on the side of the 2000 series box only to be utterly forgotten by the time the 4000 series rolls around.
I think it will go more along the path of Tesselation - a really neat idea, it gets some really limited usage in some really niche areas, and is largely forgotten about as the main attraction of the three ring circus after the first generation. How many graphics options checkboxes do you see for tesselation options now, as compared to 2010-2012? Sure, it's still around. I'm sure it still gets some use, it's certainly available in game engines - largely no one cares, because it made for some really neat demos (and one good song), and never really made much past that initial flash in the pan.
For those keeping track, Tesselation was the big marketing bulletpoint for Fermi - the nVidia 400 series. It had some big splashes in games like Civ V and a few benchmarks, but by and large today has totally faded from the foreground.
How many games utilize a noteworthy Physx,not many.
This is is like VR,how many games that are called VR games are really any better than w/o a VR headset?
Everything is WHAT IF,COULD be,might be,almost never is and what is often not noticed at all.
Gessh i go way way back to that first rendition of that war game that had destructive surfaces,oh yeah RED something,Red Faction?I thought in another 10 years we were really going to see some amazing stuff with destructive surfaces...not.Even the CHEAPEST type game designs don't have it or very little of it.
Bottom line is the developers are still going to make cheap low end games,it is easier for them and less costly and takes less time.
Spend away,get that 5k computer system,we low budget gamer's will be playing the same games on our 1500 dollar machines,we just won't be able to brag about our haredware and fancy cooling systems and lights.
Never forget 3 mile Island and never trust a government official or company spokesman.
Rising Storm 2 Vietnam and they are working on "83" a cold war era shooter.
Aloha Mr Hand !
Brenics ~ Just to point out I do believe Chris Roberts is going down as the man who cheated backers and took down crowdfunding for gaming.