NVIDIA RTX and DirectX Raytracing

New DirectX Raytracing API for real time rendering:

https://devblogs.nvidia.com/wp-content/uploads/2018/03/rt4-625x352.png

AMD has cross platform solution.

https://gpuopen.com/gaming-product/radeon-rays/

It seems like NVIDIA (& AMD apparently) are using raytracing for:

  1. more accurate direct lighting (pretty cool, but we’ll see if it’s really beneficial)
  2. Near ground-truth AO (Will likely yield much more impressive results, we’ll see how fast it is)
  3. Reflection and refraction (OMG WE NEEDED THIS) (Denoising even seems to play well with varying roughness!!!)
    …and that’s about it.

What I’m wondering right now is:
Are we any closer to getting fully dynamic indirect lighting (even at a limited resolution/radius in front of the camera is OK…) through this technology, or is this technique pretty useless for simulating multiple bounces?

As a side note…
I wonder how much of a speedup there would be (for raytracing, cone tracing, simulation, etc.) if GPUs had integrated circuits built in for 3D vector operations?

1 Like

I hope we have this in Eevee in 2019 :stuck_out_tongue:

It will be in Radeon Prorender (https://gpuopen.com/announcing-real-time-ray-tracing/).

But, I think Eevee is not raytracer so it computes differently like Unreal, Unity and Cryengine.

1 Like

Unreal, Unity and Cryengine are also no raytracers. They - and Eevee - are based on rasterization.
The demo’s shown by AMD/Nvidia/Microsoft are based on some sort of hybrid methods.

I’m no expert so I don’t know exactly how it’s done, but I believe the screen is first build up by rasterization and the ray tracing part runs through the shader.

https://www.remedygames.com/experiments-with-directx-raytracing-in-remedys-northlight-engine/

Slides (858.85 MB)

unreal action

1 Like

The new mesh and task shaders available to Turing cores may prove more useful for reducing the performance hit from complex geometry to Eevee…

I recorded that UE4 video. Things are super super early at the moment, as the current version doesnt have denosing. To render that video i cranked the samples to 30 rays per pixel, and then temporal antialiasing does the rest.
For blender, the real upgrade is mesh shaders. They would allow very optimal ways of rendering huge meshes and lots of objects.

I hope they can include RTX in Cycles or Eevee and with the upcoming release of the RTX 2060 cards that is more cheaper and more powerful than a GTX 1070ti I hope they do it soon cuz realtime Ray tracing is going to be big change for 3D especially now it has come to the mainstream

NVIDIA Vulkan Ray Tracing Tutorial

Still not quite there for use in games. Part of the demo is showing a lot of stutter and it doesn’t matter if soft shadows take a second to converge, as convergence needs to happen 60 times a second.

For production purposes though, that would be quite different if only the full gamut of shading and rendering features were even possible with Optix.

PDF:
https://media.contentapi.ea.com/content/dam/ea/seed/presentations/2019-ray-tracing-gems-chapter-20-akenine-moller-et-al.pdf

You can try and compare GTX vs. RTX with “Optix 6.0 Path Tracing demo”

“Since the release of Optix 6.0 two days ago I have been playing a bit with the new RTX support. Here’s a demo that should run on Maxwell, Pascal and Turing, which allows a direct comparison of the ray tracing performance of these platforms. Spoiler: Turing fares well.”

I will soon have a comprehensive OptiX 6.0 RTX GPU rendering benchmark up. Just posted some teaser results with OptixMeshViewer sample.

2 Likes

Quartz
Physically based Vulkan RTX path tracer with a declarative ES7-like scene description language.
Powered by Qt 3D, NVIDIA RTX & Vulkan.
© 2018 - 2019 Michał Siejak (@Nadrin)

https://github.com/Nadrin/Quartz/releases/download/v1.0.0/quartz_1.0.0_win64.zip

2 Likes