Search Unity

Unity offers several rendering pipelines, two Global Illumination systems, four Lighting Modes, three Light Modes, two Shadowmask Modes, etc. This tremendous flexibility allows you to create projects targeting high-end PCs and console, as well as mobile and XR devices. However, the number of options can be overwhelming if, for instance, you are new to Unity, aren’t familiar with rendering jargon, or are accustomed to renderers with a very tight set of features.

A few months ago, in May 2018, I joined the European Spotlight Team based in the UK. Our mission is to closely support high-profile developers and push the envelope of Unity. One of my other roles is to help creators to get the most out of Unity. During my career as a game lighting artist, I have principally worked with game engines with fully locked and ultra optimized rendering pipelines, therefore I understand the multitude of lighting features and permutations in Unity can initially seem daunting. This is why I wrote a new best practice guide: Setting up the lighting pipeline in Unity.

I have created several diagrams, decision flowcharts, and tables to give you a high-level perspective of the lighting pipeline and to help you decide which render pipeline and which global lighting settings would best suit your project. As an amuse-bouche of what you’re about to see in the guide, have a look at this diagram giving you an overview of the whole lighting pipeline for every step along your lighting journey in Unity:

In the guide, I essentially focus on the first four main steps, from the selection of a rendering pipeline to the addition of lights. Later on, I present several project examples, such as a mobile strategy game, an AAA corridor shooter and a battle royale. Optimal settings and recommendations for these scenarios should help you get started on the right foot.

After you read this guide, you should have a good understanding of the different render pipelines available in Unity and their lighting settings. Let’s get started!


Subscribe to comments

Leave a reply

You may use these HTML tags and attributes: <a href=""> <b> <code> <pre>

  1. A wonderful documentation, it’s very good reading for any level of use, thanks for sharing :D

  2. Thank you for sharing. :)

  3. I have to say though after following the link – I’m really impressed with the clarity and intelligent diagrams. I didn’t find anything for me, but I’m so tried of teaching others the differences, and now I do not have to. Excellent resource for all Unity users, definitely inclusive of artists – great work and thank you!

  4. Tiny omission: HDRP has forward and deferred also. In the future, deferred will also be added to LWRP.

    1. Pierre Yves Donzallaz

      August 29, 2018 at 11:25 am Reply

      Thank you Robert! You’re right, HDRP does indeed have a hybrid Deferred-Forward mode. I haven’t specified it in the graph above, because shaders will take the appropriate path by default when using the “Default” rendering path (in the Rendering Settings of the camera). However, one can force the “Enable Forward Rendering Only” when choosing a “Custom” rendering path. This would have to be profiled to see which mode is the most efficient (either Deferred-Forward or Forward only), depending on the project. “Forward Only” could be useful for scenes using a vast majority of custom (non-deferred) shaders for instance.

  5. Firstly, thank you very much for your idea to create a cycle on lighting. This, in my opinion, is the most difficult for me, as for a beginner in Uniy. Secondly, thank you for starting with an explanation of the terms, it helps a lot. And finally, could you also show an example of choosing lighting settings in real time for the open world :) I understand that this is the most difficult, but also the most interesting. Thank you.

    1. Pierre Yves Donzallaz

      August 28, 2018 at 9:04 pm Reply

      Cheers! If you’re looking for a real-time scenario with a very large level, you can check Scenario 4 at the end of the guide.

    2. Pierre Yves Donzallaz

      August 29, 2018 at 10:03 am Reply

      Thank you! You might consider Scenario 4 if you want to create a very large level with dynamic lighting.

  6. The host name does not resolve.