xms0g/abra
xms0g/abra has 32 GitHub stars and 4 forks. GitHot measured 0 stars in 24 hours, +1 in 7 days, and +2 in 15 days. Last checked 2026-11-10 01:33 UTC. Last push 2026-10-18.
3D Rendering Engine
What you can do
- Deferred path is fully G-Buffer based, or you can switch to Forward anytime.
- Opaque objects go through Deferred or Forward (depending on your selected pipeline). Transparent objects always render in the Forward pipeline to keep blending sane.
- Efficiently draw many copies of the same mesh in a single draw call.
- Directional Light + Shadow Mapping
Measured star growth
- in 24h
- 0
- in 7 days
- +1
- in 15 days
- +2
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalAbra
Abra is a modern rendering engine built on OpenGL, featuring a flexible hybrid Forward + Deferred pipeline.
It’s designed for clarity, experimentation, and real-time graphics research.
Features
- Hybrid Forward / Deferred Pipeline
- Deferred path is fully G-Buffer based, or you can switch to Forward anytime.
- Opaque & Transparent Rendering
- Opaque objects go through Deferred or Forward (depending on your selected pipeline). Transparent objects always render in the Forward pipeline to keep blending sane.
- Instanced Rendering (GPU Instancing)
- Efficiently draw many copies of the same mesh in a single draw call.
- Lighting & Shadows
- Directional Light + Shadow Mapping
- Point Light + Shadow Mapping (cubemap-based)
- Spot Light + Shadow Mapping
- HDR Rendering
- Full HDR workflow with tone mapping and manual exposure control.
- PBR
- Image-based Lighting (IBL) with prefiltered environment cubemaps.
- Load-time diffuse & specular irradiance cubemap convolution.
- SSAO
- Only avaliable in the deferred pipeline.
- Frustum Culling
- Per-entity and per-mesh culling.
- Skybox Rendering
- Advanced Materials
- Normal Mapping
- Parallax Mapping
- Anti-Aliasing
- MSAA (only avaliable in the forward pipeline)
- FXAA
- Post-Processing
- Modular, extendable post-FX chain (bloom, blur, tone mapping, gamma, etc.)
- Entity Component System (ECS)
- Data-oriented architecture for flexible, efficient game objects.
- Debug Tools
- Normal visualization
- Wireframe mode
- Tessellation Pipeline
- Terrain rendering with dynamic LOD
- Built-in Models
- Cube – perfect for testing transforms, lighting, and shadow maps
- Cubemap – used for skybox rendering
- Plane
- Sphere
- Terrain
- Screen Quad – for post-processing, deferred pipeline, and blitting
- Supported Model Format
- Abra currently supports glTF 2.0 models only.Other formats (e.g., OBJ, FBX) are not supported.
- PBR Workflow
- The engine follows the glTF metallic-roughness workflow.
- Texture Conventions
- Albedo (Base Color)
- sRGB
- Normal Map
- Linear
- Roughness-Metallic (packed)
- Linear
- Channels:
- R → unused
- G → Roughness
- B → Metallic
- Occlusion Map
- Linear
- Channels:
- R → AO
- Optionally AO can be baked into the Roughness-Metallic texture.
- Albedo (Base Color)
Screenshots

Controls
| Key | Action |
|---|---|
| WASD | Move |
| RMB | enable/disable Free Look |
RUN
➜ ~ ./abra scene_Sponza_Spotlight.json
Roadmap
- Cascaded shadow maps
License
This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.
Explore related projects
ytdl-org/youtube-dl
Command-line program to download videos from YouTube.com and other video sites
141,500 starsexcalidraw/excalidraw
Virtual whiteboard for sketching hand-drawn like diagrams
135,396 starsgodotengine/godot
Godot Engine – Multi-platform 2D and 3D game engine
119,840 starsmrdoob/three.js
JavaScript 3D Library.
117,905 stars