What problem does it solve? Building interactive 3D experiences in Three.js requires wiring together raycasting, camera controls, and input events, which involves repetitive boilerplate and subtle coordinate conversion math that is easy to get wrong. ## Core Features & Use Cases - Raycasting & Picking: Detect clicks, hovers, and touches on 3D objects with mouse-to-NDC coordinate conversion and intersection filtering. - Camera Controls: Configure OrbitControls, FlyControls, FirstPersonControls, PointerLockControls, TrackballControls, and MapControls with damping, limits, and auto-rotation. - Object Manipulation: Attach TransformControls gizmos and DragControls to move, rotate, and scale meshes, plus click and box selection systems. - Use Case: You are building a 3D product configurator where users click parts of a model to customize them. Use this Skill to set up raycast-based selection with hover highlighting and orbit camera navigation. ## Quick Start Add click detection and orbit controls to my Three.js scene so users can select and inspect 3D objects.