Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commite8beb5604c

README.md

ibl

Image-based lighting from the scene's own sky.

local ibl = require("@builtin::systems.imageBasedLighting.ibl")

ibl.set({ diffuse = 1, specular = 1 })
ibl.follow()    -- go back to reading the scene's sky after pinning values
ibl.get()       --> the settings in force
ibl.active()    --> are the passes running
ibl.clear()     --> off, settings kept for the next set()

set takes any subset. With both diffuse and specular at 0 nothing is being asked for and the passes are released.

The sky's colours and the sun are read from the scene, so recolouring the sky recolours what metal reflects. Passing any colour or direction explicitly pins it and takes the scene off automatic tracking for that value; follow() puts it back.

diffuse and specular are separate scales because an interior usually wants the sky's diffuse contribution pulled down while its reflections stay, and an exterior often wants the reverse.

For environment lighting a scene should simply have, author the EnvironmentLighting component instead. This module is for code that changes it at runtime: moving indoors, a cutscene, a quality slider.

The full description is in the package readme: guides { path = "systems/imageBasedLighting" }.