ezEngine is an open source C++ game engine.
Visit http://ezEngine.net for documentation, samples and detailed build instructions.
The full engine functionality is currently only available on Windows, because the renderer uses Direct3D 11. Work on porting the renderer to Vulkan is ongoing. There is an experimental Linux port of the editor, but it is not yet functional enough for productive use.
All non-rendering related functionality compiles on Windows, Android, Linux and MacOS. See this page for details.
See the releases for recent changes and prebuilt binaries. Note, however, that releases are infrequent and you are generally expected to build the engine yourself.
These are the instructions for Windows. For other platforms see this page.
Open a Windows Terminal to clone and build the engine:
git clone https://github.com/ezEngine/ezEngine.git
cd ezEngine
.\GenerateWin64vs2022.bat
- Open the Visual Studio solution
Workspace\vs2022x64\ezEngine_vs2022x64.sln
and build everything. - Launch the
Editor
project from Visual Studio and open one of the sample projects.
EZ is built in a modular way, enabling users to either use all available functionality, or to pick and choose individual features and build the rest themselves. Larger features are implemented through engine and editor plugins and can therefore easily be removed or replaced. For instance sound (Fmod), physics (Jolt) and particle effects are all provided through plugins.
EZ puts a strong emphasis on a solid foundation that is both easy and efficient to use. Even if you do not use the rendering functionality, EZ has a lot to offer to build your own engine on top of.
Finally, EZ comes with a feature rich editor that makes it possible to quickly prototype your game using visual scripting and custom C++ code.
- Here is a variety of pretty pictures.
- For tutorial videos, see our YouTube channel.
- Available sample projects are listed in our documentation
- For high-level feature documentation see our website.
- Code API documentation is available here.
- Also see the page of frequently asked questions.
Contributions are always welcome. Please see this page for details on how you can contribute.
If you have a question, contact us.