OGRE (Object-Oriented Graphics Rendering Engine) is a proven, modular C++ renderer for custom engine development. It empowers engine programmers and industrial simulation developers to build high-performance 3D applications in C++ and Python efficiently.
Start with a battle-tested, flexible rendering backend that scales from embedded robotics to high-end visualization tools. OGRE abstracts Vulkan, Direct3D, and OpenGL so you can focus on your engine's logic.
Get Started - Tutorials - Documentation - Community Support - What's New?
Experience rapid prototyping with our high-level Python bindings (HighPy). Get a PBR scene running in seconds:
# pip install ogre-python
import Ogre.HighPy as ohi
# Create a window
ohi.window_create("Ogre", window_size=(1280, 720))
# Load a mesh (glTF 2.0, OBJ, or Ogre Mesh)
ohi.mesh_show("Ogre", "DamagedHelmet.glb", position=(0, 0, -3))
ohi.point_light("Ogre", position=(0, 10, 0))
# Main Loop
while ohi.window_draw("Ogre") != 27: # Press ESC to exit
passOGRE provides the tools you need to build immersive experiences, from advanced lighting and shadow effects to complex character animations and rich particle systems.
| Physically Based Shading | Dynamic Shadows |
|---|---|
![]() |
![]() |
| Achieve stunning surfaces with PBR workflows | Stencil and texture-based shadows for any environment |
| Character Animation | Particle Effects |
|---|---|
![]() |
![]() |
| Hardware & software skeletal animation support | Flexible particle systems for fire, smoke, sparks & more. |
| Advanced Compositor Pipeline | Terrain Rendering |
|---|---|
![]() |
![]() |
| Streamline post-processing like bloom and HDR | Multi-layered, textured landscapes with LOD |
| UI Toolkit | Physics Engine Integration |
|---|---|
![]() |
![]() |
| Seamless integration with Dear ImGui for in-game UI | Use Bullet Physics for rigid body dynamics |
| Realistic Surface Details | Volumetric Rendering |
|---|---|
![]() |
![]() |
| Bump and offset mapping for enhanced textures | With CSG and triplanar texturing |
For a complete list of capabilities, see our features page.
Ready to try OGRE? Get up and running in minutes.
- Try it Online: Launch the WebAssembly Demo right in your browser.
- Download for Windows: Get the latest SDK with pre-compiled demos.
- Get it on Android: Find our sample browser on F-Droid.
For detailed instructions on compiling from source, see our Building OGRE guide.
Trusted by commercial studios and open-source communities for games, simulators, and tools:
Industrial & Robotics
- Gazebo - Robot simulation
- ROS 3D visualization tool (rviz)
- Surgical Image Toolkit
- OpenCV OVIS visualization module
Open Source Games
Commercial Games
We believe in the power of collaboration.
- Engine Programming Q&A: Ask technical questions in our Forums or on Gitter.
- Contribute: Check out good first issues to get started. We welcome everything from bug fixes to new features.
- Support the project via Patreon to help fund continued development.
OGRE is licensed under the MIT License. Please see the full license documentation for details.
If you use OGRE in your academic work, please cite it:
@misc{rojtberg2024ogre,
author = "{Rojtberg, Pavel and Rogers, David and Streeting, Steve and others}",
title = "OGRE scene-oriented, flexible 3D engine",
year = "2001 -- 2024",
howpublished = "\url{https://www.ogre3d.org/}",
}








