Skip to content

benpm/gl_playground

Folders and files

NameName
Last commit message
Last commit date

Latest commit

568b941 · May 9, 2024
May 9, 2024
May 9, 2024
May 9, 2024
Feb 20, 2023
Mar 28, 2023
Mar 28, 2023
May 9, 2024
Feb 23, 2023
May 9, 2024
Sep 13, 2023
Mar 6, 2023
Feb 23, 2023
Mar 14, 2023
Mar 22, 2023
Mar 6, 2023

Repository files navigation

GL Playground

Big mess of things including assignments for Interactive Computer Graphics, Physics-Based Animation, and Computational Geometry courses from spring 2023 at University of Utah. Things are super spread out so take a look at some of the branches

Features

  • Directional, spot, and point lights, all with basic shadow-mapping
  • Interactive rigid body physics
  • Multi-material objects, basic shading
  • Surface nets generated in a compute shader
  • Really slow softbody physics solver

Assets

Before doing anything you need to download the externally-hosted assets. On Linux you can just run the download_assets.sh script. Otherwise, you'll have to download and unzip the archive manually.

Building

Linux

You might need to install a couple packages:

  • libxinerama-dev
  • libglu1-mesa-dev
  • libxi-dev
  • ninja-build

Then let CMake handle the rest:

cmake -B build
cmake --build build

Windows

Open project as a CMake project, click "Build All", and hope for the best. You might want to install Ninja.

Running

./build/app or .\build\app.exe

Dependencies

These dependencies are either included or managed by CMake and built locally: