VisualNifty is an interactive volumetric image viewer developed for medical imaging and scientific visualization. It is designed to efficiently render three-dimensional scalar fields from NifTi-format datasets. The system utilizes a ray casting-based Direct Volume Rendering (DVR) pipeline to transform raw intensity data into detailed visualizations. Advanced rendering techniques - such as gradient-based shading and ambient occlusion — are integrated to improve the perception of depth and surface detail, resulting in photorealistic images that depict internal structures. High performance enable real-time interactivity even on complex and high-resolution datasets. VisualNifty also offers an intuitive user interface that allows fine-grained adjustments of visualization parameters, like transfer functions, lighting configurations, and view manipulations.
For a detailed description of the implementation and results, see the full report:
VisualNifty - A Volumetric image viewer
src/
main.cpp
core/ # NIfTI data management
interface/ # UI components (GradientEditor, LayoutSetup, RangeSlider)
viewPort/ # 3D viewport, camera, and rendering logic
shaders/ # GLSL shader files for rendering
datasets/ # Example NIfTI datasets
CMakeLists.txt # Build configuration
- C++17 compatible compiler (e.g., clang++)
- OpenGL development libraries
- Qt
- RNifti (for NIfTI support)
mkdir build
cd build
cmake ..
makeAfter building, run the application from the build directory:
./VisualNifty


.png)

