Friday, March 15th 2019
Crytek Shows Off Neon Noir, A Real-Time Ray Tracing Demo For CRYENGINE
Crytek has released a new video demonstrating the results of a CRYENGINE research and development project. Neon Noir shows how real-time mesh ray-traced reflections and refractions can deliver highly realistic visuals for games. The Neon Noir demo was created with the new advanced version of CRYENGINE's Total Illumination showcasing real time ray tracing. This feature will be added to CRYENGINE release roadmap in 2019, enabling developers around the world to build more immersive scenes, more easily, with a production-ready version of the feature.
Neon Noir follows the journey of a police drone investigating a crime scene. As the drone descends into the streets of a futuristic city, illuminated by neon lights, we see its reflection accurately displayed in the windows it passes by, or scattered across the shards of a broken mirror while it emits a red and blue lighting routine that will bounce off the different surfaces utilizing CRYENGINE's advanced Total Illumination feature. Demonstrating further how ray tracing can deliver a lifelike environment, neon lights are reflected in the puddles below them, street lights flicker on wet surfaces, and windows reflect the scene opposite them accurately.Neon Noir was developed on a bespoke version of CRYENGINE 5.5., and the experimental ray tracing feature based on CRYENGINE's Total Illumination used to create the demo is both API and hardware agnostic, enabling ray tracing to run on most mainstream, contemporary AMD and NVIDIA GPUs. However, the future integration of this new CRYENGINE technology will be optimized to benefit from performance enhancements delivered by the latest generation of graphics cards and supported APIs like Vulkan and DX12.
Ray tracing is a rendering technique that simulates complex lighting behaviors. Realism is achieved by simulating the propagation of discreet fractions of energy and their interaction with surfaces. With contemporary GPUs, ray tracing has become more widely adopted by real-time applications like video games, in combination with traditionally less resource hungry rendering techniques like cube maps; utilized where applicable.The experimental ray tracing tool feature simplifies and automates the rendering and content creation process to ensure that animated objects and changes in lighting are correctly reflected with a high level of detail in real-time. This eliminates the known limitation of pre-baked cube maps and local screen space reflections when creating smooth surfaces like mirrors, and allows developers to create more realistic, consistent scenes. To showcase the benefits of real time ray tracing, screen space reflections were not used in this demo.
Neon Noir follows the journey of a police drone investigating a crime scene. As the drone descends into the streets of a futuristic city, illuminated by neon lights, we see its reflection accurately displayed in the windows it passes by, or scattered across the shards of a broken mirror while it emits a red and blue lighting routine that will bounce off the different surfaces utilizing CRYENGINE's advanced Total Illumination feature. Demonstrating further how ray tracing can deliver a lifelike environment, neon lights are reflected in the puddles below them, street lights flicker on wet surfaces, and windows reflect the scene opposite them accurately.Neon Noir was developed on a bespoke version of CRYENGINE 5.5., and the experimental ray tracing feature based on CRYENGINE's Total Illumination used to create the demo is both API and hardware agnostic, enabling ray tracing to run on most mainstream, contemporary AMD and NVIDIA GPUs. However, the future integration of this new CRYENGINE technology will be optimized to benefit from performance enhancements delivered by the latest generation of graphics cards and supported APIs like Vulkan and DX12.
Ray tracing is a rendering technique that simulates complex lighting behaviors. Realism is achieved by simulating the propagation of discreet fractions of energy and their interaction with surfaces. With contemporary GPUs, ray tracing has become more widely adopted by real-time applications like video games, in combination with traditionally less resource hungry rendering techniques like cube maps; utilized where applicable.The experimental ray tracing tool feature simplifies and automates the rendering and content creation process to ensure that animated objects and changes in lighting are correctly reflected with a high level of detail in real-time. This eliminates the known limitation of pre-baked cube maps and local screen space reflections when creating smooth surfaces like mirrors, and allows developers to create more realistic, consistent scenes. To showcase the benefits of real time ray tracing, screen space reflections were not used in this demo.
150 Comments on Crytek Shows Off Neon Noir, A Real-Time Ray Tracing Demo For CRYENGINE
"However, the future integration of this new CRYENGINE technology will be optimized to benefit from performance enhancements delivered by the latest generation of graphics cards and supported APIs like Vulkan and DX12."
We don't know almost anything on the CryTek implementation, they may be using SDF volumetric representation in place of standard geometry for example but it's know by almost a full year that some developers was working to use raytracing on old hardware (even console), that's what Sebastian Aaltonen said last summer for example.
We don't know exactly their implementation as they refraining from giving any details and circumventing any technical question they are given but they are planning to slowly release details, I guess that is to draw attention and generate hype, sadly CryTek had been suffering for years and advertising may help them, I loved how they pushed things forward with Crysis.
maybe extra cuda cores draw more power than tensor/rt cores,or they'd have more production issues with such a card.they'd need a complete die redesign too.with 2080ti it's the same 88 rop/11gb configuration,with tensor and rt cores added to them.
that is a good question I'd like to know the answer for too.
In the end I think they decided that economically they're better off with rt-specific hardware and software rather than brute force and more cuda.
maybe they just wanted to use a proprietary solution (dxr) cause they're nvidia.
Makes sense only if he hoped competitors would not bother implementing it like that/it would take them long to catch up (years of research are behind it).
Notably, this very demo doesn't use it, does it?
look at this video,titan v only delivers 27 fps where 2080ti delivers 42. seems like the more cuda instead of decicated rt/tensor cores approach would still be a way less efficient way
We know almost nothing on what they've done, they carefully avoided to give out any detail and they are dodging technical question but they said they will gradually release some info, the only thing to do is to wait for actual details.
As I've said in a precedent post, there are other developer working to use RT on old hardware and console and there are even game out now, look at Claybook for example it uses raytracing for primary + AO + shadow rays and no one talk about it, I think that CryTek is way better at generating
flamesdebates :laugh:.GPUs these days are no longer GPUs, they are compute accelerators with some dedicated graphics hardware strapped on. Learning GPGPU/OpenCL/CUDA made me realize how many hardware capabilities and features have been stuffed inside these things that have none or very little relevance to graphics workloads. There is a reason why Microsoft made no particular hardware requirements to DXR, it may very well be the case that future GPUs will go down the path of doing RTRT under the form of generic compute workloads rather than strapping yet another dedicated ASIC on these already clogged architectures.
You could have a small "RT" coprocessor and a GPU on seperate dies connected by infinity fabric.
The small RT coprocessor cost would be negligible compared to Nvidia's monolithic approach.
Doesn't necessarily mean anything about what Crytek did. They didn't have to compare performance, they are selling the engine, not non-RTX GPUs.
Vulkan doesn't have anything like DXR (a very specific set of instructions to do certain thing with rays). Well, why, they said that they used SVOGI or Sparse voxel octree global illumination
Just look at what the tensor cores do for some compute workloads, that's why specialized silicon is needed.
Total Illumination is their voxel AO solution, it is in its principle halfway towards raytracing and they have obviously expanded the feature by quite a bit.
They said they will use hardware acceleration if they can. Vulkan and DX12 imply using VK_RT extensions and DXR which today means it does include RTX support. Or, technically the other way around - RTX does support the APIs that CryTek uses. Efficiency. Dedicated hardware can do BVH traversal faster. Less resources, less power. Vulkan has VK_NVX_raytracing extensions. Both DXR and these extensions provide access to RT cores that do BVH traversal. This is fairly central operation to most raytracing implementations.
NV went with "look, you need (my) specialized hardware for RT reflections/shadows!".
Crytek called BS.
Let's twist it somehow, shall we? Good for whatever NVX stands for. Oh wait, isn't it the thing that killed OpenGL? Hmm... Good that you put it into quotes. I hopeyou also meant it.
- Die space cost for RT cores is 10-15%, probably less. I am not sure if that is exactly massive.
- RTX is proprietary, DXR is not, Vulkan extensions may or may not turn out to be proprietary depending on what route the other IHVs take.
- Software-based implementation - or in this case, implementation running on general-purpose hardware - is simply not as efficient as dedicated hardware. So far everything points at this being the case here, whether you take Nvidia's inflated marketing numbers or actual tests by users. This shows even with production applications and Turing vs Titan V. RT cores simply do make a big difference in performance.
- Quality of demo is a different topic, CryTek is selling the engine so it needs to look beautiful. This one is probably best compared to the Star Wars demo. Metro is an artistic problem rather than technical one.
CryTek said this is on the release roadmap in 2019 so all the performance aspects should be testable eventually. I would expect them to talk more about it during GDC as well.
www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VK_NV_ray_tracing That's not raytracing and it's nothing new for them nor for others as there are many games out by years that make use of voxel for GI and, BTW, it's not the solution used to render reflection (the only thing they claim is raytraced).