EAGL.Examples.LearnOpenGL.GettingStarted.CoordinateSystemsExercise (eagl v0.8.0)

View Source

LearnOpenGL 6.4 - Coordinate Systems (Exercise)

This exercise demonstrates a dynamic camera that orbits around a scene of cubes, showing how the view matrix can be animated to create camera movement effects.

Original C++ Source

This example is based on the original LearnOpenGL C++ tutorial: https://github.com/JoeyDeVries/LearnOpenGL/tree/master/src/1.getting_started/6.4.coordinate_systems_exercise3

Framework Adaptation Notes

This exercise demonstrates:

  • Dynamic view matrix calculation for camera movement
  • Orbiting camera using trigonometric functions
  • Time-based camera animation
  • How view transformations affect the entire scene

Key Learning Points

  • Camera Movement: How changing the view matrix moves the camera
  • Orbital Motion: Using sine and cosine for circular camera paths
  • Look-At Matrix: Dynamic camera target and position calculation
  • Time-Based Animation: Smooth camera movement over time

Exercise Goals

The exercise typically asks to:

  • Make the camera orbit around the scene of cubes
  • Keep the camera always looking at the center
  • Create smooth, continuous camera movement
  • Demonstrate view matrix manipulation

Visual Effect

Shows multiple cubes with an orbiting camera:

  • Camera moves in a circular path around the scene
  • Camera always points toward the center of the scene
  • Cubes have static rotations (20 degrees × index) and appear to move due to camera motion
  • Demonstrates the relationship between camera and world coordinates

Usage

EAGL.Examples.LearnOpenGL.GettingStarted.CoordinateSystemsExercise.run_example()

Press ENTER to exit.

Summary

Functions

run_example(opts \\ [])