A C++ rendering project featuring ray marching, camera controls, CSG operations, and shader/texture integration.
Designed as a learning and experimentation project for graphics programming and real-time rendering techniques.
This repository implements a renderer based on ray marching and implicit geometry, with support for advanced visual effects and procedural content generation.
The project focuses on building a strong foundation in 3D math, rendering algorithms, and shader-based effects, while remaining modular and extensible.
-
Ray Marching Renderer
- Signed Distance Functions (SDFs)
- Efficient scene evaluation
- Smooth surface rendering
-
Moving & Animated Fractals
- Time-based transformations
- Procedural fractal shapes
- Dynamic scene evolution
-
Constructive Solid Geometry (CSG)
- Union, intersection, subtraction
- Complex shape composition
-
Lighting & Visual Effects
- Real-time shadows
- Reflections
- Surface normals & lighting models
-
Textures
- Texture mapping on objects
- Material-based surface appearance
-
Procedural Landscapes
- Realistic terrain generation
- Height-based shading
- Natural-looking environments
-
Camera System
- Free camera movement
- Quaternion-based rotations
- Stable orientation handling
-
Shader Integration
- GLSL shader support
- Modular shader utilities
- Custom lighting and effects pipelines
This project demonstrates hands-on experience with:
- C++ Graphics Programming
- Ray Marching & SDF Mathematics
- 3D Linear Algebra
- Vectors
- Quaternions
- Rotations & transformations
- Shader Programming (GLSL)
- Procedural Generation
- Fractals
- Terrain & landscapes
- Lighting Models
- Shadows
- Reflections
- Rendering Optimization Concepts
- Camera & Scene Management
- OpenGL Rendering Pipeline
- CMake-based Project Configuration
C++ | OpenGL | GLSL | Ray Marching (SDFs) | CSG | Procedural Generation | 3D Math | Lighting & Texturing


