skills/threejs-skills/threejs-postprocessing/SKILL.md
Addon screen-space post-processing for three.js using EffectComposer, Pass base class, RenderPass, and stock passes such as UnrealBloomPass, SSAOPass, SSRPass, BokehPass, OutlinePass, FXAAPass/SMAAPass, TAARenderPass, and ShaderPass; references the Shaders addon group for underlying shader modules. Use when building composer chains for bloom, SSAO, or other screen-space effects; not for basic renderer tone mapping alone (threejs-renderers).
npx skillsauth add partme-ai/full-stack-skills threejs-postprocessingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
ALWAYS use this skill when the user mentions:
EffectComposer, RenderPass, stacking passes, resize of composerShaderPass with shader modules from Addons Shaders groupIMPORTANT: postprocessing vs renderers vs node-tsl
| Pipeline | Skill | |----------|--------| | Classic composer + passes | threejs-postprocessing | | Renderer output color/tone only | threejs-renderers | | Node/TSL post nodes | threejs-node-tsl |
Trigger phrases include:
RenderPass → effect passes → output; ensure size matches renderer and DPR changes.composer.setSize alongside renderer resize workflows.renderer.info to check draw calls and triangles.PostProcessing class separately to avoid name collision confusion.import * as THREE from 'three';
import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js';
import { RenderPass } from 'three/addons/postprocessing/RenderPass.js';
import { UnrealBloomPass } from 'three/addons/postprocessing/UnrealBloomPass.js';
const composer = new EffectComposer(renderer);
composer.addPass(new RenderPass(scene, camera));
const bloomPass = new UnrealBloomPass(
new THREE.Vector2(window.innerWidth, window.innerHeight),
1.5, // strength
0.4, // radius
0.85 // threshold
);
composer.addPass(bloomPass);
// Resize handler — must match renderer size
window.addEventListener('resize', () => {
renderer.setSize(window.innerWidth, window.innerHeight);
composer.setSize(window.innerWidth, window.innerHeight);
});
// Render loop: use composer.render() instead of renderer.render()
function animate() {
composer.render();
}
renderer.setAnimationLoop(animate);
See examples/workflow-composer-bloom.md.
| Docs section | Representative links | |--------------|----------------------| | Postprocessing | https://threejs.org/docs/EffectComposer.html | | Postprocessing | https://threejs.org/docs/RenderPass.html | | Postprocessing | https://threejs.org/docs/UnrealBloomPass.html | | Shaders (addon modules) | https://threejs.org/docs/module-CopyShader.html |
Addon passes live under Postprocessing and Shaders modules in three.js docs. Pass constructors and required buffers change across versions—link the specific pass page (e.g. UnrealBloomPass) rather than guessing uniform names.
When answering under this skill, prefer responses that:
EffectComposer, RenderPass, or the named pass (SSAOPass, …).PostProcessing + threejs-node-tsl when users mix terms.setSize on composer when threejs-renderers resizes.ShaderPass.English: effectcomposer, renderpass, bloom, ssao, ssr, outline, postprocessing, three.js
中文: 后期、EffectComposer、泛光、SSAO、SSR、屏幕空间、three.js
development
Provides per-component and per-API examples with cross-platform compatibility details for uni-app, covering built-in components, uni-ui components, and APIs (network, storage, device, UI, navigation, media). Use when the user needs official uni-app components or APIs, wants per-component examples with doc links, or needs platform compatibility checks.
tools
Creates new uni-app projects via the official CLI or HBuilderX with Vue 2/Vue 3 template selection, manifest.json and pages.json configuration, and directory structure setup. Use when the user wants to scaffold a new uni-app project, initialize project files with a single command, or set up the development environment.
tools
Browses, installs, configures, and manages plugins from the uni-app plugin market (ext.dcloud.net.cn) including component plugins, API plugins, and template plugins with dependency handling. Use when the user needs to find and install uni-app plugins, configure plugin settings, manage plugin dependencies, or integrate third-party components.
tools
Develops native Android and iOS plugins for uni-app including module creation, JavaScript-to-native communication, and plugin packaging for distribution. Use when the user needs to build custom native modules, extend uni-app with native capabilities (camera, Bluetooth, sensors), or create publishable native plugins.