What problem does it solve?
It solves the challenge of converting mouse or touch input into accurate, interactive behavior in a Three.js scene (clicks, hovers, selection, and UI placement).
Core Features & Use Cases
- Raycasting for object interaction: Detect which 3D object a user points at by converting screen coordinates to normalized device coordinates and intersecting rays with scene objects.
- Camera controls for user navigation: Add orbit, fly, first-person, pointer-lock, trackball, or map-style controls and keep them responsive in the animation loop.
- Selection & interaction patterns: Implement click-to-select, hover highlighting, box selection, drag interactions, and keyboard input patterns for gameplay-like behavior.
- World/screen coordinate utilities: Convert between world positions and screen coordinates for overlays such as HTML labels, and compute ray-plane intersections for grounded placement.
Quick Start
Use this skill to implement raycasting-based click detection and camera orbit controls in your Three.js app.