#### <sup>[Ollin](../../../index.md) → [Examples](../../index.md) → [3D](../index.md) → Lighting</sup>

---

## Lighting

| [![AreaLights](https://media.ollin.art/examples/3D/Lighting/AreaLights/still-640.jpg?v=26651171)](arealights.md) | [![Caustics](https://media.ollin.art/examples/3D/Lighting/Caustics/still-640.jpg?v=aed12531)](caustics.md) | [![GlobalIllumination](https://media.ollin.art/examples/3D/Lighting/GlobalIllumination/still-640.jpg?v=5fa3476a)](globalillumination.md) | [![LightSets](https://media.ollin.art/examples/3D/Lighting/LightSets/still-640.jpg?v=1fa3340d)](lightsets.md) |
|---|---|---|---|
| [AreaLights](arealights.md) | [Caustics](caustics.md) | [GlobalIllumination](globalillumination.md) | [LightSets](lightsets.md) |
| [![LightShaping](https://media.ollin.art/examples/3D/Lighting/LightShaping/still-640.jpg?v=03521fd0)](lightshaping.md) | [![Lighting](https://media.ollin.art/examples/3D/Lighting/Lighting/still-640.jpg?v=d9b4e3a4)](lighting.md) | [![LightingPresets](https://media.ollin.art/examples/3D/Lighting/LightingPresets/still-640.jpg?v=bc241a49)](lightingpresets.md) | [![ManyCasters](https://media.ollin.art/examples/3D/Lighting/ManyCasters/still-640.jpg?v=df8f82ec)](manycasters.md) |
| [LightShaping](lightshaping.md) | [Lighting](lighting.md) | [LightingPresets](lightingpresets.md) | [ManyCasters](manycasters.md) |
| [![ManyLights](https://media.ollin.art/examples/3D/Lighting/ManyLights/still-640.jpg?v=7e7b9fae)](manylights.md) | [![PointShadow](https://media.ollin.art/examples/3D/Lighting/PointShadow/still-640.jpg?v=8c544921)](pointshadow.md) | [![Shadows](https://media.ollin.art/examples/3D/Lighting/Shadows/still-640.jpg?v=cdacd4a7)](shadows.md) | [![SpotShadow](https://media.ollin.art/examples/3D/Lighting/SpotShadow/still-640.jpg?v=f3b187db)](spotshadow.md) |
| [ManyLights](manylights.md) | [PointShadow](pointshadow.md) | [Shadows](shadows.md) | [SpotShadow](spotshadow.md) |
| [![VolumetricLight](https://media.ollin.art/examples/3D/Lighting/VolumetricLight/still-640.jpg?v=3a7e02d7)](volumetriclight.md) |  |  |  |
| [VolumetricLight](volumetriclight.md) |  |  |  |

This group covers the light kinds, curated rigs, and cast shadows.

| Sketch | What it shows |
| --- | --- |
| [Lighting](lighting.md) | The three light kinds placed by hand to shade solids: a fixed directional key, an orbiting point bulb, and a sweeping spot. A row of spheres shows rising `specularSharpness`. |
| [LightSets](lightsets.md) | One frame, several lighting rigs. Three rooms side by side, each lit by `withLights` from its own fixture: a swinging warm bulb, a cold overhead strip, a green glow out of the floor. Every back wall carries the same plate drawn `withoutLights`, so the three walls come out warm, cold and green while the three plates come out identical. |
| [LightingPresets](lightingpresets.md) | One call relights the whole scene. The curated `LightingPreset`s (`.standard`/`.threePoint`/`.goldenHour`/`.noir`/`.studio`/`.moonlight`) cycle over one still life, plus a custom rig built in the sketch. Click or press a key to step. |
| [Shadows](shadows.md) | Directional cast shadows. Solids drop shadows onto a floor and onto one another through `castShadows()`. |
| [SpotShadow](spotshadow.md) | A spot light as the shadow caster. A perspective shadow map is fit to its cone, so the solids inside the beam drop crisp shadows. |
| [PointShadow](pointshadow.md) | A point light as an omnidirectional caster. A bulb at the center throws shadows in every direction, ray-traced on an RT GPU and through a depth cube elsewhere. |
| [ManyCasters](manycasters.md) | Several casters at once. A warm key is joined by a swinging spot or by two circling point lamps, and each throws its own shadow. |
| [AreaLights](arealights.md) | Rect, disk, and tube sources shading a small studio set. The softbox grows and shrinks, and the softness of its shadows follows its size. |
| [LightShaping](lightshaping.md) | Photometric profiles and a projected cookie, the two ways a real fixture shapes its beam. |
| [ManyLights](manylights.md) | A courtyard at night with sixty-four drifting lamps in it. Each one is given a `reach`, so it lights its own corner and nothing past it, and the renderer shades a pixel against the lamps standing over it. |
| [VolumetricLight](volumetriclight.md) | Beams, gobos, and shafts you can see in the air. |
| [Caustics](caustics.md) | The light a glass or a polished metal focuses onto what is around it. |
| [GlobalIllumination](globalillumination.md) | Light that bounces, so a red wall reddens what stands beside it. |

Run one with `swift run Example-3D-Lighting-<Name>`, for example `swift run Example-3D-Lighting-Lighting`.
