This repository collects all three hand-ins for the Visual Computing Fundamentals (Computer Graphics 1) course at NTNU (autumn 2024).
Together they form a single, cumulative project that starts with drawing a few triangles and ends with a fully animated, lit moon-scene featuring multiple helicopters.
Tech stack: Rust + OpenGL 4.0 Core (GLSL), using the gloom-rs framework provided by the course.
- Draws coloured triangles & wireframes
- Per‑vertex colour interpolation
- Transparent triangles with correct depth sorting & alpha blending
- Perspective projection & free‑fly camera rig
- OBJ mesh loading (lunarsurface & helicopter)
- Scene‑graph with hierarchical transforms
- Basic Lambert lighting (per‑pixel normals)
- Time‑based rotor animation
- Chase camera that locks onto any helicopter
- Helicopter pilot mode with WASD controls
- Follow a helicopter by pressing
CTRL + num
to select it, thenALT
to control it with WASD (controls are a bit wonky, but functional)
- Follow a helicopter by pressing
- Tested on Windows 11 and expected to work on recent Linux distros with OpenGL 4.0+ (untested)