Welcome to the webpage of the Dreaded Portal Engine (DPE). This is a 3D engine created from scratch using C++ and OpenGL. The engine is free of use under the BSD-2 License and you can make any modifications you like. If you spot a bug, please file a ticket of contact me.
DPE is a free and open source engine that is designed for indoor environments. Work started in 2012 and I have worked on this project on and off in my spare time. This engine has been used for multiple academic projects, including PANDORA where it rendered underwater environment and controlled an AUV as it traversed through seabed facilities.
The core feature is the use of portals to render levels, which makes it very suited for indoor environments. Outdoor environment can also be rendered, but the engine is not trailered to it. I have written an Editor that can be used to create levels.
The following features are currently supported:
- Create levels using the build-in Editor.
- Scene Graph Manager.
- Collision detection.
- Dynamic lights and shadows, including self shadowing.
- HDR Graphics.
- Normal Mapping.
- Animated models using skeletons.
- AI pathfinding using navigation meshes.
- GPU Particle engine.
- Volumetric lighting.
- Sky boxes.
- Cross-Platform (tested for Linux and Windows).
- GUI system.
Future developments (already part of games created using DPE):
Here are some Youtube videos to get an idea of what the engine can do.
First video shows a number of tech demos that I have created, these tech demos informed the design of the 3D engine and increased it capabilities.
The next video is of my game Dreaded Spectre, which is a 3D FPS with networking capabilities. It is the 2nd game that I developed using DPE. The first being a simple platformer.
In 2019 I have started implementing an Editor for DPE Here is a video showcasing some of its capabilities.
- Setup under Linux (coming soon).
- Setup under Windows.
The source code can be acquired using SVN, the URL is:
Projects using DPE
The FPS called "Spectre": Dreaded Spectre (an FPS)
If you have any questions, please do not hesitate to contact me.