File CameraController.h
FileList > controllers > CameraController.h
Go to the source code of this file
Camera manipulation controller for interactive viewpoint control.More...
#include "Controllers.h"
Classes
| Type | Name |
|---|---|
| class | CameraController Controller for interactive camera manipulation via user input. |
Detailed Description
CameraController handles user input events (mouse drag, scroll, keyboard) and translates them into camera transform updates. It implements standard 3D viewport navigation patterns: orbit, pan, zoom, and fly-through movement.
Architecture: * Subscribes to mouse and keyboard events via EventPool * Modifies active Camera object's Transform3D directly * Emits CameraEvents to notify other systems of camera changes * Operates in world space or camera-local space based on mode
Camera Modes: * Orbit: Rotate around look-at target (tumble) * Pan: Translate camera parallel to view plane * Zoom: Move camera toward/away from target (dolly) * Fly: Free-form movement without target constraint
Coordinate System: * Right-handed Y-up world space * Camera forward: -Z axis (OpenGL convention) * Transform3D provides position/rotation as glm::vec3
Note:
Mouse sensitivity and movement speed are configurable.
Note:
Camera bounds (near/far planes) are enforced during manipulation.
The documentation for this class was generated from the following file src/editor/controllers/CameraController.h