PGR Semestral work with sample scenes and bowling. doxygen was generated with a help of LLM.
More...
|
| class | Bezier |
| | Bezier curve spline implementation. More...
|
| class | CatmullRoll |
| | Catmull-Rom spline implementation. More...
|
| class | Spline |
| | Base class for parameterized spline animations. More...
|
| class | Camera |
| | Camera for generating view and projection matrices. More...
|
| class | Geometry |
| | Base class for all spatial objects, serving as a node in the scene graph. More...
|
| class | Material |
| | Defines surface properties and texture maps for rendering a mesh. More...
|
| class | Fog |
| | Simple linear fog parameters. More...
|
| struct | LightUniforms |
| | Caches shader uniform locations for a specific light instance to avoid repeated lookups. More...
|
| class | Light |
| | Base class for scene lighting calculations. More...
|
| class | DirectionalLight |
| class | PointLight |
| class | SpotLight |
| class | CollisionBox |
| | Oriented Bounding Box (OBB) collider. More...
|
| struct | CollisionResult |
| | Container for collision response data. More...
|
| class | CollisionDetector |
| | Static utility class implementing intersection math (SAT, Sphere overlap). More...
|
| struct | PhysicsMaterial |
| | Physical properties affecting collision resolution. More...
|
| class | CollisionShape |
| | Base class for physics colliders, acting as an invisible (or debug) mesh. More...
|
| class | CollisionSphere |
| | Spherical collider, optimized for fast radius-based intersection tests. More...
|
| class | RigidBody |
| | Kinematic object affected by gravity, friction, and collision resolution. More...
|
| class | RigidSphere |
| | Kinematic sphere that automatically rolls based on its horizontal velocity. More...
|
| class | ImageLabel |
| | Static 2D image plane, implemented as a paused 1-frame image sequence. More...
|
| class | ImageMoving |
| | 2D plane with an animated (scrolling) texture map More...
|
| class | ImageSequenceLabel |
| | 2D plane that plays an animation by cycling through a sprite sheet texture More...
|
| class | TextLabel |
| | Dynamically generates 2D geometry to render text using a bitmap font atlas. More...
|
| struct | SubMesh |
| | Represents a part of a mesh that uses a specific material. More...
|
| class | Mesh |
| | Base drawable 3D object containing geometry and material data. More...
|
| class | ObjMesh |
| | Mesh loaded from an external .obj file. More...
|
| class | Skybox |
| | Environmental background cube map with day/night cycle blending. More...
|
| class | Input |
| | Global input manager tracking keyboard states and mouse deltas. More...
|
| class | MtlLoader |
| class | ObjLoader |
| | Parses Wavefront .obj files and extracts vertices, normals, UVs, and submeshes. More...
|
| struct | BowlingLightData |
| class | BowlingGame |
| | Core logic manager handling bowling rules, scoring, and lane interactions. More...
|
| class | BowlingScene |
| | Main playable scene containing the bowling alley environment and game loop. More...
|
| class | CollisionPin |
| | Specialized sphere collider for bowling pins with custom fall physics. More...
|
| class | InputControllerBowling |
| | Bowling-specific player controller handling throwing mechanics and scene interactions. More...
|
| class | SampleScene |
| | Demonstration scene featuring a working procedural clock and basic physics interactions. More...
|
| class | Scene |
| | Base class for all game scenes, managing lifecycle, rendering, and scene entities. More...
|
| class | TemplateScene |
| | Empty starter scene with initialized lighting, skybox, and a player controller. More...
|
| class | Controller |
| | Base interface for input handling and logic updates. More...
|
| class | InputController |
| | Handles player movement, camera perspective switching, and object interaction logic. More...
|
| struct | StateSaved |
| | Stores a snapshot of object's transform for saving or undo operations. More...
|
| class | LevelEditor |
| | Runtime editor utility allowing the user to pick, move, and save mesh transformations. More...
|
| class | Shader |
| | Core manager for shader program compilation, uniform binding, and rendering. More...
|
|
| enum class | ShapeType { BOX
, SPHERE
} |
| enum class | BowlingVideoEvent {
SPLIT
, SPARE
, STRIKE
, MISS
,
END
} |
| enum class | BowlingLightMode { NORMAL
, OFF
, DISCO
} |
| enum class | PinState { IDLE
, FALLING
, DEAD
} |
| enum class | StencilSelect { ALL
, MESHES
, COLLISION
} |
| | Determines which objects are written to the stencil buffer for mouse picking. More...
|
| enum class | EditMode { NONE
, TRANSLATE
, ROTATE
, SCALE
} |
| | Transformation modes for the runtime level editor. More...
|
| enum class | EditAxe { NONE
, X
, Y
, Z
} |
| | Axis lock for current transformation. More...
|
|
| void | menuCallback (int option) |
| void | init () |
| | Initializes OpenGL context, scene data, and sets up GLUT callbacks.
|
| void | draw () |
| | Main render loop. Handles updates, physics, and rendering of all scene elements.
|
| void | keyboardInputEvent (unsigned char key, int x, int y) |
| void | specKeyboardInputEvent (int key, int x, int y) |
| void | keyboardUpInputEvent (unsigned char key, int x, int y) |
| void | specKeyboardUpInputEvent (int key, int x, int y) |
| void | mouseButtonEvent (int button, int state, int x, int y) |
| void | mouseMoveEvent (int x, int y) |
| void | mouseWheelEvent (int wheel, int direction, int x, int y) |
| void | screenResizeEvent (int width, int height) |
| | Handles window resize events to maintain correct projection aspect ratio.
|
| CollisionResult | collisionFalse () |
| CollisionResult | collisionTrue (const glm::vec3 &normal, const glm::vec3 &reflection) |
PGR Semestral work with sample scenes and bowling. doxygen was generated with a help of LLM.