mcpField
T
threejs-bloom

threejs-bloom

github.com/scottsttsCreative & media951107 installsUpdated 1w ago
Repository

About threejs-bloom

A Three.js skill for tuning bloom as a response to bright HDR signals. It guides scene exposure, selective bloom ownership, compositing order, and validation of the base and final views.

Key features

  1. 01Inspect pre-tone-map luminance
  2. 02Choose bloom signal and ownership model
  3. 03Calibrate threshold, radius, and strength
  4. 04Restore substituted materials for selective passes
  5. 05Composite before exposure and tone mapping

Use cases

  1. 01Tuning glow from emissive scene elements
  2. 02Adding selective bloom to a composed scene
  3. 03Checking bloom contribution against the base view

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/scottstts/threejs-awesome-graphics-agent-skills --skill threejs-bloom

After installing, type/threejs-bloomin Claude Code to confirm it loaded.

Bundled filesagents/openai.yamlreferences/hdr-bloom-system.md

Details

From the project README

Bloom

Bloom is a camera/display response to bright HDR signal. Establish scene exposure and emissive luminance before tuning blur.

Workflow

  1. Inspect pre-tone-map luminance.
  2. Choose which scene values should bloom.
  3. Choose a single-node or dual selective-render ownership model.
  4. Calibrate threshold, radius, smooth width, and strength in HDR.
  5. Restore all substituted materials transactionally for selective passes.
  6. Composite before exposure/tone mapping.
  7. Validate base, contribution, and final views.

Read references/hdr-bloom-system.md for the HDR ordering, dual selective-bloom transaction, compact emissive hierarchy, and the costs and limits of each ownership model.

Apply the material substitution/restoration ownership pattern in the reference before adding selective bloom to a composed scene.

Failure conditions

  • bloom creates the only visible form of an effect;
  • all bright materials share one arbitrary emission multiplier;
  • threshold is tuned after tone mapping;
  • selective bloom requires mutating scene materials every frame without restoration guarantees;
  • transparent particles disappear from extraction because pass ownership is unclear;
  • bloom radius changes wildly with resolution;
  • highlights become gray because energy is clamped too early.

Routing boundary

Use $threejs-exposure-color-grading for metering, adaptation, tone mapping, and LUTs. Load $threejs-image-pipeline only when bloom must be composed with several shared image-space systems. A per-pixel ray integrator that owns its own reduced-resolution target and accumulation history keeps its bloom internal; route that to $threejs-raymarched-space-effects.

Comments

Markdown supported