From partme-ai-full-stack-skills
Implements screen-space post-processing for three.js using EffectComposer, RenderPass, and passes like UnrealBloomPass, SSAOPass for bloom, SSAO, SSR in composer chains.
npx claudepluginhub partme-ai/full-stack-skills --plugin t2ui-skillsThis skill uses the workspace's default tool permissions.
**ALWAYS use this skill when the user mentions:**
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
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