An open API service indexing awesome lists of open source software.

https://github.com/rzeronte/brakeza3d

Brakeza3D is a OpenSource Engine3D for old school lovers
https://github.com/rzeronte/brakeza3d

development engine3d indiedev indiegame open-gl open-source sdl2 video-game

Last synced: about 1 month ago
JSON representation

Brakeza3D is a OpenSource Engine3D for old school lovers

Awesome Lists containing this project

README

          

# ![Brakeza3D](website/static/img/favicon.ico) Brakeza3D Game Engine

### A Powerful 2D/3D Game Engine for Indie Developers

[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![Version](https://img.shields.io/badge/version-0.26.1-green.svg)](https://github.com/rzeronte/brakeza3d/releases)
[![Platform](https://img.shields.io/badge/platform-Windows%20%7C%20Linux%20%7C%20macOS-lightgrey.svg)](https://brakeza.com/downloads)
[![C++](https://img.shields.io/badge/C++-17-00599C.svg?logo=c%2B%2B)](https://isocpp.org/)

[๐ŸŒ Website](https://brakeza.com) โ€ข [๐Ÿ“– Documentation](https://brakeza.com/docs/getting-started/intro) โ€ข [โฌ‡๏ธ Downloads](https://brakeza.com/downloads) โ€ข [๐ŸŽจ Gallery](https://brakeza.com/gallery) โ€ข [๐Ÿ’ฌ Blog](https://brakeza.com/blog)

![Brakeza3D Editor](website/static/img/gallery/01.png)

---

## ๐Ÿš€ What is Brakeza3D?

**Brakeza3D** is a free, open-source game engine written from scratch in **C++**, designed for flexibility, learning, and complete control over the rendering pipeline. Built with a clean, component-based architecture, it empowers indie developers and small teams to prototype and build games quickly and efficiently.

Whether you're learning graphics programming, prototyping game ideas, or building small to medium real-time projects, Brakeza3D provides an intuitive yet powerful toolset.

### โœจ Key Highlights

- ๐ŸŽฏ **Dual 2D/3D Workflow** โ€” Seamlessly work with both 2D and 3D content
- ๐ŸŽจ **Visual Shader Editor** โ€” Node-based shader creation alongside GLSL support
- ๐Ÿ“ **Lua Scripting** โ€” Write game logic without recompilation
- ๐Ÿ› ๏ธ **Integrated Editor** โ€” Drag-and-drop interface with real-time preview
- โšก **High Performance** โ€” Modern OpenGL with optimized rendering pipeline
- ๐ŸŒ **Cross-Platform** โ€” Windows, Linux, and macOS support

---

## ๐Ÿ“ฆ Quick Start

### Pre-built Binaries

Download ready-to-use binaries for your platform:

- **Windows 10/11** (amd74): [Download .exe](https://github.com/rzeronte/brakeza3d/releases/download/0.26.2/Brakeza3D-v0.26.2-amd64-Windows-installer.exe) (68.9 MB)
- **Ubuntu/Debian** (amd64): [Download .deb](https://github.com/rzeronte/brakeza3d/releases/download/0.26.2/Brakeza3D-v0.26.2-amd64-Linux-installer.deb) (33.3 MB)

### Build from Source
```bash
git clone https://github.com/rzeronte/brakeza3d.git
cd brakeza3d
mkdir build && cd build
cmake ..
make
```

๐Ÿ“– **For detailed build instructions, dependencies, and platform-specific guides**, see the [full documentation](https://brakeza.com/docs/getting-started/download-and-install).

---

## ๐ŸŽฏ Features

### ๐ŸŽจ Rendering & Graphics
- **Forward and Deferred rendering** pipelines
- **Shadow mapping** with configurable quality
- **ADS lighting system** (Ambient, Diffuse, Specular)
- **Extensible GLSL shaders** + visual node-based editor
- Modern **OpenGL** rendering

### ๐Ÿ› ๏ธ Development Tools
- **Dockable GUI** with intuitive drag & drop
- **Integrated profiler** for performance analysis
- **Code editor** with syntax highlighting (Lua/GLSL)
- **Scene management** system
- **Real-time preview** in editor

### โš™๏ธ Core Systems
- **Cross-platform** (Windows / Linux / macOS)
- **Multi-threading** support (thread pool based)
- **Physics world integration** (Bullet Physics)
- **Sound system** integration (SDL2_mixer)
- **Assimp library** for 3D model loading

### ๐ŸŽฎ Scripting & Input
- **Lua 5.2 scripting** with full engine API access
- **Gamepad support** (Xbox / PlayStation controllers)
- Component-based architecture for easy extensibility

---

## ๐Ÿ—๏ธ Built With

| Technology | Purpose |
|-----------|---------|
| [C++](https://isocpp.org) | Core engine language |
| [SDL2](https://www.libsdl.org) | Window management & input |
| [OpenGL](https://www.opengl.org) | Graphics rendering |
| [Bullet Physics](https://pybullet.org) | Physics simulation |
| [Assimp](https://www.assimp.org) | 3D model importing |
| [Lua 5.2](https://www.lua.org) | Scripting |
| [ImGui](https://github.com/ocornut/imgui) | Editor interface |
| [GLM](https://github.com/g-truc/glm) | Mathematics library |

---

## ๐Ÿ“ธ Gallery

| Editor Interface | Node-Based Shaders | 3D Scene |
|:---:|:---:|:---:|
| ![](website/static/img/gallery/02.png) | ![](website/static/img/gallery/05.png) | ![](website/static/img/gallery/03.png) |

| Lighting System | Physics Demo | Material Editor |
|:---:|:---:|:---:|
| ![](website/static/img/gallery/07.png) | ![](website/static/img/gallery/09.png) | ![](website/static/img/gallery/11.png) |

[View Full Gallery โ†’](https://brakeza.com/gallery)

---

## ๐Ÿ“š Documentation

- **[Getting Started Guide](https://brakeza.com/docs/getting-started/intro)** โ€” First steps with Brakeza3D
- **[Editor Manual](https://brakeza.com/docs/editor/overview)** โ€” Learn the editor interface
- **[Engine Concepts](https://brakeza.com/docs/engine-concepts/script-controls)** โ€” Understand core systems
- **[Scripting API](https://brakeza.com/docs/scripting-api/index)** โ€” Complete Lua API reference
- **[Advanced Topics](https://brakeza.com/docs/advanced/core-shaders)** โ€” Deep dive into engine internals

---

## ๐ŸŽ“ Project Status

Brakeza3D is under **active development** (currently v0.26.1). Some systems and APIs may change, and certain features are still experimental.

**Current suitability:**
- โœ… Learning graphics and engine architecture
- โœ… Rapid prototyping
- โœ… Small to medium real-time projects
- โš ๏ธ Production-ready games (experimental features)

---

## ๐ŸŒ Community

Join the Brakeza3D community and stay updated:

- ๐Ÿฆ [Twitter](https://twitter.com/brakeza3d) โ€” Latest news and updates
- ๐Ÿ“บ [YouTube](https://youtube.com/@brakeza3d) โ€” Tutorials and showcases
- ๐Ÿ’ผ [LinkedIn](https://www.linkedin.com/in/eduardo-rodr%C3%ADguez-1796b8172/) โ€” Connect with the creator
- ๐Ÿ“ [Blog](https://brakeza.com/blog) โ€” Development insights

---

## ๐Ÿ“„ License

This project is licensed under the **GNU General Public License v3.0 (GPL-3.0)**.

You are free to use, modify, and distribute this software, provided that:
- Derivative works are also licensed under GPL-3.0
- Source code is made available
- Copyright and license notices are preserved

For full details, see the [LICENSE](LICENSE) file or visit [gnu.org/licenses/gpl-3.0](https://www.gnu.org/licenses/gpl-3.0.html).

---

## ๐Ÿ’– Support the Project

If you find Brakeza3D useful, consider:
- โญ Starring this repository
- ๐Ÿ› Reporting issues or bugs
- ๐Ÿ’ก Suggesting new features
- ๐Ÿ“– Contributing to documentation
- ๐Ÿ”ง Submitting pull requests

---

**Made with โค๏ธ by [Eduardo Rodrรญguez รlvarez](https://brakeza.com)**

[Website](https://brakeza.com) โ€ข [GitHub](https://github.com/rzeronte/brakeza3d) โ€ข [Docs](https://brakeza.com/docs/getting-started/intro)