Granite is a Vulkan-based real-time 3D rendering engine and application framework developed by Hans-Kristian Arntzen. It provides a comprehensive, modular library for building interactive graphics applications, including a high-level Vulkan abstraction, a declarative render graph with automatic resource management, scene loading (glTF, custom JSON), a full post-processing pipeline (TAA, SMAA, FXAA, HDR, bloom, SSAO, SSR), clustered and volumetric lighting, mesh shaders, and GPU-driven rendering. The framework also includes cross-platform audio (WASAPI, PulseAudio, Oboe) with DSP, video encoding/decoding via FFmpeg, a physics system (Bullet), a UI widget system, an entity-component system, and a flexible filesystem abstraction with network VFS support. The codebase is production-quality with advanced Vulkan feature usage, extensive tests, and tools for asset processing. While the author explicitly discourages external contributions, the repository remains actively maintained and showcases high craftsmanship in graphics engineering.
Astroterm is a terminal-based star map application written in C. It renders the real-time positions of stars, planets, the Moon, and constellation figures using ASCII or Unicode characters. The system computes celestial positions from the Yale Bright Star Catalog, Keplerian orbital elements, and user-specified date/time and location (latitude/longitude or city name). It projects the visible sky onto the terminal via a stereographic projection and uses ncurses for display and input. The build system is Meson with Ninja, supporting Linux, macOS, and Windows. The codebase is well-structured into separate modules for astronomy calculations (astro.c), coordinate transforms (coord.c), terminal rendering (drawing.c, term.c), and data parsing (parse_BSC5.c, city.c). It includes comprehensive unit tests using Unity and CI via GitHub Actions. The application is highly configurable through command-line arguments and demonstrates strong craftsmanship in astronomical computations and terminal graphics.
RTXPT is a high-fidelity real-time path tracing reference implementation developed by NVIDIA. It serves as both a standalone demo application and a reference for integrating advanced rendering techniques into production engines. The codebase implements state-of-the-art path tracing with ReSTIR (Reservoir Spatiotemporal Importance Resampling) for direct and global illumination, NEE-AT (Next Event Estimation - Adaptive Temporal) for lighting feedback, and Stable Planes for denoising. It integrates heavily with NVIDIA RTX SDKs including RTXDI, NRD (Denoiser), OMM (Opacity Micromaps), and DLSS (Streamline). The application supports both DirectX 12 and Vulkan backends via the nvrhi abstraction layer, though Vulkan support is noted as work-in-progress. The architecture follows a modular design with separate components for lighting bakers, material systems, shader compilation, and rendering passes. It uses the Donut engine framework for scene management and shader compilation infrastructure.
This repository implements Mobile-GS, a real-time Gaussian splatting approach for novel view synthesis optimized for mobile devices. The system trains 3D Gaussian representations from multi-view images, applies compression techniques (vector quantization, Huffman coding, GPCC) to reduce model size, and renders novel views via differentiable EWA (Elliptical Weighted Average) splatting. It includes training pipelines (train.py, pretrain.py), rendering engine (gaussian_renderer/), scene management, custom CUDA kernels for efficient rasterization, and evaluation metrics. The architecture follows a modular design with separate components for training, rendering, scene handling, and compression, optimized for deployment on mobile platforms with limited computational resources.