Asset Forge VFX Catalog
The VFX Catalog is a browser-based tool in Asset Forge for previewing and documenting all visual effects used in Hyperscape.Overview
The VFX Catalog provides:- Live previews of all game effects using Three.js
- Detailed specifications for each effect (colors, parameters, layers)
- Phase timelines showing effect progression over time
- Interactive controls for testing and iteration
Accessing the Catalog
Start Asset Forge
Navigate to VFX Tab
- Open http://localhost:3400
- Click the VFX tab in the navigation bar
- Browse effects in the sidebar catalog
Effect Categories
Combat Effects
Spells:- Fire Blast
- Ice Barrage
- Wind Strike
- Earth Bind
- Arrow (ranged combat)
- Magic projectile trails
- Impact effects
- Damage splats (red numbers)
- XP drops (floating text)
- Health bar animations
World Effects
Teleportation:- Teleport beam (vertical cylinder)
- Particle swirl
- Flash effect
- Sound cue
- Water ripples
- Splash particles
- Bobber animation
- Fire particles (TSL emissive)
- Smoke trails
- Ember glow
UI Effects
Glow Particles:- Item highlights
- Quest markers
- Interaction indicators
- Fireworks burst
- Skill icon glow
- XP orb fill animation
Effect Details
Viewing Effect Details
Click any effect in the sidebar to view: Preview Panel:- Live Three.js scene with effect
- Orbit controls (drag to rotate)
- Auto-rotation toggle
- Reset camera button
- Colors: Primary, secondary, accent colors with hex codes
- Parameters: Duration, intensity, scale, speed
- Layers: Particle systems, meshes, lights
- Phase Timeline: Effect progression over time
Example: Teleport Effect
Colors:- Primary:
#4a90e2(blue) - Secondary:
#ffffff(white) - Accent:
#00ffff(cyan)
- Duration: 2000ms
- Beam height: 10 units
- Particle count: 100
- Rotation speed: 2 rad/s
- Beam cylinder (vertical)
- Particle swirl (spiral motion)
- Flash sphere (fade in/out)
- Ground ring (expanding)
- 0-500ms: Beam fade in, particles spawn
- 500-1500ms: Full effect, particles swirl
- 1500-2000ms: Beam fade out, particles despawn
Using the Catalog
For Designers
Document new effects:- Create effect in code
- Add to
packages/asset-forge/src/data/vfx-catalog.ts - Preview in catalog
- Document colors, parameters, phases
- View effect in catalog
- Note parameters to adjust
- Edit code
- Refresh catalog to see changes
For Developers
Reference implementation:- Browse catalog for similar effect
- View detail panel for parameters
- Copy implementation pattern
- Adjust colors/parameters for new effect
- Preview effect in isolation
- Check phase timeline for timing issues
- Verify colors match design
- Test with different parameters
Effect Data Structure
Catalog Entry
Example Entry
Adding New Effects
1. Create Effect Implementation
2. Add to Catalog
3. Create Preview Component
4. Test in Catalog
- Start Asset Forge:
bun run dev:forge - Navigate to VFX tab
- Find your effect in sidebar
- Verify preview and details
Recent Changes (February 2026)
New VFX Catalog Tab
Commit:69105229 (feat(asset-forge): add VFX catalog browser tab)
Features:
- Sidebar catalog of all game effects
- Live Three.js previews
- Detail panels for colors, parameters, layers
- Phase timelines
- Spells (fire, ice, wind, earth)
- Arrows (ranged combat)
- Glow particles (highlights)
- Fishing (water effects)
- Teleport (beam + swirl)
- Combat HUD (damage splats, XP drops)
Instanced Arena Fire Particles
Commit:c20d0fc (perf(arena): instance arena meshes and replace dynamic lights with TSL fire particles)
Changes:
- Removed 28 PointLights (performance impact)
- Replaced with GPU-driven TSL emissive brazier material
- Enhanced fire particle shader with:
- Smooth value noise
- Soft radial falloff
- Additive-blend-friendly design
- Per-particle turbulent vertex motion
- 97% draw call reduction (~846 meshes → InstancedMesh)
- No dynamic lights (better performance)
- GPU-driven particle motion (no CPU overhead)
Related Documentation
- packages/asset-forge/README.md - Asset Forge overview
- packages/asset-forge/src/data/vfx-catalog.ts - Catalog data
- packages/asset-forge/src/components/VFX/ - VFX components
- packages/shared/src/systems/shared/presentation/Particles.ts - Particle system