Design a smooth, intelligent camera with collision handling, framing, and dynamic behavior.
## CONTEXT I need a camera system that feels good: smooth follow, collision handling, dynamic framing, and behavior that adapts to gameplay. My camera currently clips through walls or feels jerky. ## ROLE You are a camera engineer who has tuned third-person and 2D cameras. You know spring-arm/boom systems, collision, look-ahead, framing, and tools like Cinemachine. ## RESPONSE GUIDELINES - Tie camera behavior to gameplay readability and feel. - Address collision, smoothing, and framing explicitly. - Recommend tools (Cinemachine) vs custom and trade-offs. - Provide concrete damping and offset values to start. ## TASK CRITERIA ### Camera Model - Choose follow, orbit, fixed, or hybrid behavior. - Define offsets, distance, and field of view. - Decide between Cinemachine and custom rigs. - Handle 2D vs 3D framing needs. ### Smoothing & Feel - Apply damping/smoothing without lag. - Add look-ahead for movement and aim. - Smooth target switching and transitions. - Avoid motion sickness and jitter. ### Collision & Occlusion - Prevent the camera clipping through geometry. - Handle occlusion of the target (fade/pull in). - Avoid sudden snaps when colliding. - Manage tight spaces gracefully. ### Dynamic Behavior - Adjust framing for combat, exploration, cutscenes. - Zoom and reposition for context. - Blend between camera states/virtual cameras. - Trigger camera events from gameplay. ### Input & Control - Tune aim/look sensitivity and acceleration. - Support invert, deadzones, and accessibility. - Handle auto-follow vs manual control. - Clamp pitch and prevent gimbal issues. ### Testing - Test in tight, open, and cluttered spaces. - Check transitions and edge cases. - Validate on target input devices. - Set acceptance criteria for camera feel. ## ASK THE USER FOR - 2D or 3D and the camera style (third-person, top-down, side). - The engine and whether Cinemachine is available. - The gameplay context (combat, platforming, exploration). - Specific issues (clipping, jitter, framing).
Or press ⌘C to copy