From f4588913ea02f81383959540de1f3ed2bc28589a Mon Sep 17 00:00:00 2001 From: djairoh Date: Thu, 16 Jan 2025 13:29:47 +0100 Subject: [PATCH] wip: updated readme --- README.md | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 58 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 86906ce..8ee6182 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,50 @@ -# cuda-based-raytrace +
+

+

CUDA-based Raycaster

-## How to run +

+ This project implements a raycaster on nvidia GPUs, visualizing wind patterns through the use of silhouette shading +

-First, initialize the imGui submodule: +## Table of Contents + +* [About the Project](#about) +* [Dependencies](#dependencies) +* [Installation](#installation) + * [Running](#running) + * [Screenshots](#screenshots) +* [Modules](#modules) + + +## 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](#screenshots)). +The program expects to use the MERRA2 dataset, which can be found [here](https://disc.gsfc.nasa.gov/datasets/M2I6NPANA_5.12.4/summary?keywords=M2I6NPANA_5.12.4). + + +## 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: ```bash git submodule update --init ``` -Then, compile using cmake: +Then compile using CMake: ```bash mkdir build cd build @@ -15,3 +52,20 @@ 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