Godot 4.x 3D Tutorial: Lighting, Shadows and Global Illumination

This is a casual, slightly unstructured tutorial covering the task of lighting in the Godot 4.x (Godot 4.2 specifically in this example) game engine. We cover topics including lighting and shadows, world environment, emissive textures, global illumination and more. The tutorial is video only and uses assets from the GameMasters Toolkit: Assets and Tutorials Humble Bundle exported from Unreal Engine. You can learn more about the process of exporting from Unreal Engine to Godot or Blender here.

The demo also showcases an emissive texture animated over time. This is done using GDScript with a Tween using the following code:

func _ready():
    var tween = get_tree().create_tween()
    var material = self.get_active_material(1);
    tween.tween_property(material, "emission_energy_multiplier",10.0,0.5).set_trans(Tween.TRANS_BOUNCE)
    tween.set_loops(0)

A rough timeline of the video is as follows:

  • 0:00 Intro and overview
  • 0:43 Exporting the scene from Unreal Engine to Blender
  • 2:00 General lighting in Godot 4.x – The Finished Results
  • 3:24 Creating a new project and importing the scene
  • 5:25 Fixing an emissive texture in Godot
  • 6:38 Emissive textures in Godot
  • 7:34 Omni Lights, DirectionalLights and SpotLights in Godot
  • 9:44 Creating a SpotLight in Godot
  • 10:42 WorldEnvironment introduction
  • 11:24 Toggling default environment and lighting settings in Godot
  • 12:05 Creating a new WorldEnvironment
  • 12:46 Creating a Sky
  • 13:14 Setting up Tone Mapping
  • 14:14 SDFGI – Signed Distance Field Global Illumination or DynamicGI
  • 15:25 Light color and shadows
  • 16:21 VoxelGI or baked global illumination
  • 18:24 Other WorldEnvironment Settings
  • 19:51 Ambient Lighting
  • 21:25 Overview and recap

You can check out the entire 25 minute long Godot 4.x lighting tutorial in the video below.

Scroll to Top