Search Unity

As developer marketing manager at AMD, my mission is to enable developers to create ground-breaking experiences. That’s why I am so passionate about GPUOpen — AMD’s open-source initiative to supply game and professional graphics developers with powerful tools to design better GPU-powered applications. In the blog below, I’ll dive into AMD’s Radeon Rays integration with Unity and how you can learn more on GPUOpen.

Revolutionizing render times and workflows for realistic light effects has been one of the dominant themes at GDC 2018. The announcement of AMD’s Radeon Rays integration in Unity’s GPU Progressive Lightmapper is particularly exciting to game developers looking to boost the visual fidelity of their games assisted by an interactive baking workflow.

Powering the GPU Progressive Lightmapper is a full integration with AMD’s Radeon Rays – a fully open source high performance GPU-accelerated ray tracing engine for low level engine developers and supporting OpenCL, Vulkan and C++ backends. Radeon Rays can be used as an important building block of a renderer supporting global illumination rendering, sound rendering (through True Audio Next) and AI.

Radeon Rays can be used for lightmap baking and light probe calculation using ray tracing and is being integrated by a number of developers to improve the lighting effects in their games. For a deeper dive into how Radeon Rays are used in a gaming rendering workflow, check out this presentation from GDC 2017.

Previous lightmapping solutions would take hours to compute even moderate sized scenes. Expansive outdoor environments could take days.

Rendering Times: CPU vs GPU

Unity’s previous light mapping solutions were entirely CPU-based and could require several hours to compute for a moderate sized scene. Expansive outdoor environments could take days to lightmap. Using Radeon Rays GPU acceleration sped up the process of tuning lights and baking up to 10x the speed of CPU based baking, giving instant feedback to the artist. The new Lightmapper also adds an interactive baking mode which allows lighting artists to navigate the scene to see the baking process in real time. It also allows them to change lighting and material and immediately see how it affects their bakes.

An example of a lightmapped scene with complex shadow interactions.

Another example of a lightmapped scene with multiple light sources and shadows.

More Rays, Less rendering time

Just how much does GPU hardware accelerate the Lightmapping process compared to previous CPU based methods? In benchmark tests comparing lightmapping hardware performance across models commonly used for benchmark (the simple cornell box, moderate sponza) and a production model (the complex blacksmith) the difference was substantial. GPU-based lightmapping generated close to 200  Million Rays/Sec, around 10X more than the level of CPU- based approaches.

With the new GPU-based progressive lightmapper, Unity users can achieve up to 10x faster bakes on a Radeon Vega in their system. The tool will also enable a faster workflow for artists to design while they bake. This means that when designers make any changes to lighting, materials, and textures, they can immediately see how that affects their baked global illumination quality. Because of the simple elegant API of Radeon Rays, developers can focus on the actual algorithm of the lightmapper instead of spending time on the integration. This means more efficient use of system resources, faster workflows and an overall better experience for Unity users as they create better quality assets.

The Real-time Ray Tracing with GPU Progressive Lightmapper is expected to be released later this year. To learn more about Radeon Rays visit GPUOpen.com and subscribe to AMD Developer News to stay up to date.

Комментарии закрыты.

  1. When will we get GPU-based progressive lightmapper?
    Unity2018.3?

  2. When can we try it out?

  3. Why are there such drastic differences in MRays/second bandwidth between the three projects, does this mean there is massive room for optimisation maybe in some pre-pass voxelisation or occlusion to reduce the wasted rays?

  4. AMD has already announced that the basic NAVI with one core will have a VEGA 64 performance for Mainstream, and we will see what the growth will be for NAVI x4 MCM.

  5. The question is will this work for Nvidia cards as well or just AMD? I mean for us indie developers and hobbyists it will be rough to dish out another 700$ for a video card.

    1. Yes, it also works on Nvidia hardware. :-)

  6. @gatts you didnt get the idea. This is GPU based not CPU.

  7. These pictures show that in the future even the current Threadripper may be too weak for games with new technologies.

  8. Unity is awesome in so many levels.
    It is not paid if you want to start, it is alive and in constant evolution, the community is really active and helpful.

    Using Radeon Rays to improve lightmapping is a really enjoyable idea.
    Great job guys!

  9. Unity is awesome in so many levels.
    It is not paid if you want to start, it is alive and in constant evolution, the community is really active and helpful.

    Using Radeon Rays to improve lightmapping is a really enjoyable idea.
    Great job guys.

  10. The thing is that no one in their right mind will use a CPU baking workflow large open environments. Even with the help of GPU, large scale and dynamic environments requires dynamic solutions, not static solutions. This is awesome for small scenes and will help a lot with that.

  11. Does this have a Unity version it is slated for yet? Also, can I assume this required AMD GPU hardware?

  12. Is it possible to expose this API in build? We have a lot of procedurally generated assets and this could bring great quality improvement.

    1. Not sure if you meant exposing the raytracing functionality or the baking itself, but both are things we would like to do in the long run.

  13. What’s the difference between this and Microsoft DXR sine you support both?

  14. Alex Lovett (HeliosDoubleSix)

    Март 30, 2018 в 11:12 дп

    Fantastic news, what about Multi GPU support? Combine work with CPU to work together? As I suspect a big core CPU machine is about as fast as GPU still so I’d likely get no speed bump and if I did I’d have a wasted multi core CPU twiddling it’s thumbs, also LAN networked baking of CPU and GPU, my tests of AMD pro render in C4D has experimental CPU rendering which was as fast as the GPU in my setup so using both is a must and is one of the very few techs that can do both given AMD sell both CPUs and GPUs, thanks!

    1. Hey Alex! Given the ease of putting many GPUs into one machine and the fact that really-multi-core CPUs are easily available to the wider public, we of course want to allow you to harness all that computational power. You can be sure that you’ll hear more on that from us.

      1. The real question is… when? (.2 would blow minds)

        1. Coming in Preview with Unity 2018.2. : https://www.youtube.com/watch?v=cRFwzf4BHvA

  15. Alex Lovett ( HeliosDoubleSix )

    Март 30, 2018 в 11:10 дп

    Fantastic news, what about Multi GPU support? Combine work with CPU to work together? As I suspect a big core CPU machine is about as fast as GPU still so I’d likely get no speed bump and if I did I’d have a wasted multi core CPU twiddling it’s thumbs, also LAN networked baking of CPU and GPU, my tests of AMD pro render in C4D has experimental CPU rendering which was as fast as the GPU in my setup so using both is a must and is one of the very few techs that can do both given AMD sell both CPUs and GPUs, thanks!

  16. Ippokratis Bournellis

    Март 30, 2018 в 9:45 дп

    Nice to see this post — the Rays-Unity integration was mentioned by AMD as a possibility in the past, https://www.slideshare.net/takahiroharada/2017-gdc-radeon-prorender-and-radeon-rays-in-a-gaming-rendering-workflow but this post means that we will finally get there at some point. SRP (in the works since 2016), Rays Lightmaping (in the works since 2017), OctaneRender (currently not working on AMD) do work, with no bugs, we can use them to make games or whatever. This is the post I wish to read — in 2018. Plus real-time shadows that look ok — imagine blending the lightmapped static geometry shadows with the bilinear shadows of the Lightweight pipeline — the result will be ugly.

    1. Then use HD pipeline?

  17. Where is Nvidia RTX ?

    1. Not in a Radeon promo blog.

  18. does this GPU Progressive Lightmapper would be available on Unity LTS 2017.x versions at future?

    1. I don’t think so, since «No new features for LTS, only bug fixes».

  19. It works with all video cards. No worries people.

  20. If you all want to keep adding other ray-tracers to Unity you can also use Cycles which was originally developed for Blender.

    The license for Cycles was chosen so that this is possible for anyone who wants to do so(for free). The people at Rhino 3D added Cycles to their software a few years ago.

    The Cycles module owner is named Brecht Van Lommel and I’m sure he’d love it if you also chose to include Cycles in the Unity engine.

    You should have no problem contacting Ton Roosendaal at the Blender foundation to get Brecht’s email address. You can also contact me through email and I will pester Brecht on your behalf.

    1. If only Cycles didn’t make incredibly grainy renders, and wasn’t slow as molasses.

      1. All path tracers make «grainy renders» and are «slow as molasses», including AMD’s ProRender, which is based on RadeonRays. On my system (NVIDIA GPU), Cycles performance blows ProRender out of the water…

  21. Radeon rays means that gpu lightmapper will be available only with radeon cards? Or nvidia too?

    1. Radeon Rays library is graphics hardware agnostic, so no worries there. :) At Unity we make sure that our features always work as well as possible on a big range of hardware. Whether you’re using AMD, NVIDIA or Intel GPUs, you can be sure that we’re doing our best to make the workflow as fast as possible for you.

      1. I would love to see more benchmarks on different GPUs, especially the shiny new R5 2400G.
        Maybe Unity can write a benchmark tool based on this, just like what Unigine does.

  22. What about NVidia cards?

    1. It works perfectly on NVidia cards.