https://github.com/sebastianbach/volume_rendering
Volume rendering experiments in GLSL
https://github.com/sebastianbach/volume_rendering
cpp glsl opengl shaders volume-rendering
Last synced: 4 months ago
JSON representation
Volume rendering experiments in GLSL
- Host: GitHub
- URL: https://github.com/sebastianbach/volume_rendering
- Owner: SebastianBach
- Created: 2018-11-16T20:00:57.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-02-25T22:45:08.000Z (over 2 years ago)
- Last Synced: 2025-02-26T00:28:37.557Z (8 months ago)
- Topics: cpp, glsl, opengl, shaders, volume-rendering
- Language: C++
- Homepage:
- Size: 186 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# OpenGL/GLSL Volume Rendering

Ray-casting volume rendering experiments in OpenGL/GLSL for Windows.
# Dependencies
Project uses *conan* to install:
* GLM: https://github.com/g-truc/glm
* GLAD: https://github.com/Dav1dde/glad
* GoogleTest: https://github.com/google/googletest# Build
To test and build, run *conan* and *cmake*:
```
mkdir build
cd build
conan install .. -s build_type=Release -s compiler.runtime=MD
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release
ctest -C Release -VV
cmake --install .
```The executable with shaders can be found in ```build/product```.
# Usage
Hotkeys:
* ```Esc```: close application
* ```Space Bar```: pause/start animation
* ```Backspace``` or ```D```: remove object
* ```A```: add object
* ```N```: toggle procedural noise deformation on/off
* ```0``` to ```9```: different rendering/shading modesThe rendering modes are:
* 1: object normals
* 2: Lambertian reflectance
* 3: Phong reflection
* 4: Fresnel effect
* 5: Hard shadows
* 6: Volumetric light effect
* 7: object colors
* 8: reserved
* 9: "blood" effect combining the above effects
* 0: default rendering combining the above effects