|
|
||
|---|---|---|
| GLFW | ||
| cmake | ||
| include | ||
| lib | ||
| src | ||
| thirdparty | ||
| .gitignore | ||
| .gitmodules | ||
| CMakeLists.txt | ||
| LICENSE | ||
| README.md | ||
| cuda_install_guide.md | ||
| load-modules.sh | ||
| makefile | ||
README.md
CUDA-based Raycaster
This project implements a raycaster on nvidia GPUs, visualizing wind patterns through the use of silhouette shading
Table of Contents
About
This project was developed as part of the course Geo-Visualization at the University of Groningen. It contains a CUDA-based raycaster which visualizes wind patterns using a silhouette shading. The program also includes various configuration options, which can be set as the program runs (see Screenshots). The program expects to use the MERRA2 dataset, which can be found here.
Dependencies
The project depends on a few libraries. Below is a list of these along with versions that will work. Newer/older versions of the libraries may also compile and run properly, but this has not been tested.
- OpenGL[^1] Tested using the Mesa (1:24.3.3-2) driver.
- glfw3 (3.4-2)
- Cuda (12.6.3-1)
- Netcdf (4.9.2-6)
- Netcdf-cxx (4.3.1-4)
- Dear ImGUI (submodule within repository)
Installation
Once all libraries are installed compiling the program is quite straightforward. First, initialize the Dear ImGUI submodule:
git submodule update --init
Then compile using CMake:
mkdir build
cd build
cmake ..
make
./cuda-raytracer
Make sure the program is executed on the nvidia GPU, or it will crash on startup.
For example, on Arch the command prime-run ./cuda-raytracer would make sure the program utilizes the GPU.
Running
TODO: this section
Screenshots
TODO: add cool screenshots
Modules
TODO: talk about program design a little