← ClaudeAtlas

light-scenelisted

Use when a PlayCanvas scene must read as a deliberate cinematic image rather than a flat asset preview, to set key and ambient lighting, sky and image-based lighting, shadows, tone mapping and exposure, and a restrained post-process grade of bloom, fog, and colour.
playcanvas/skills · ★ 15 · AI & Automation · score 80
Install: claude install-skill playcanvas/skills
# Cinematic rendering A polished frame is lit and graded, not just populated. Treat lighting, sky, shadows, tone mapping, and post as one pass over the assembled scene, and tune every value against a real screenshot rather than from memory. Prefer shipped building blocks over hand-written shaders and passes. Discover them with the `reuse-scripts` skill and adapt the closest official example with `find-examples`: - the core `CameraFrame` helper for tone mapping, ambient occlusion, bloom, vignette, and grade; - a procedural sky and image-based light for ambient colour and reflections; - a shadow catcher for grounding subjects that have no lit floor. For an outdoor scene with water, stop before authoring the scene and read both `reuse-scripts` and `find-examples`. Use `graphics/water.example.mjs` as the initial composition recipe: it already joins the production `Water` script, sky, sun, `CameraFrame`, water layer, scene depth, and reflection pipeline. Get that complete frame rendering before replacing its assets or tuning its look. A custom normal-mapped material, tessellated plane, or reflection-coloured mesh is not the baseline and does not substitute for `Water` when the brief asks for reflective water. Keep the two named production integrations visible in the implementation: - import and create `Water` from `playcanvas/scripts/esm/water.mjs` on the water entity, preserving the example's required render component, camera reference, water layer, depth map, and texture