Echo is a new game engine, which uses many industry-standards of nowadays for game development. This new design concept makes the engine simpler to use and more powerful.
Download
Examples
Documentation
How to Compile "Echo Engine" From Source Code
Scene manager is easy, No Entiy, No GameObject, No Component, No Prefab. Only Node and NodeTree.
iOS Android Html5 Windows Mac Linux Steam
Gltf 2.0, Vulkan, Metal, Pbr, real time ray tracing.
Every node can be 2d or 3d. The core difference is the camera and the unit the node use. So you can just switch a node to 2d or 3d easily.
Mostly, you'll use Lua as your main programming language. and also can also use C++ directly. The design of our node tree makes the Lua logic code more easy to write. And the embedded Lua editor and the embedded documents help you to write code in the echo editor directly.
Besides Lua, can you also choose to use the embedded Scratch language as the main development tool. This is a type of visual script inspired by MIT. In the Echo engine is Scratch based on Lua, when running the app, It'll convert to Lua and make sure it's good both to merge and will run efficent..
If you really like other types of scripting languages, you can tell us or you can support it by modifying the C++ code directly.
Programming visualization is a very important concept for non-programmers and with the help of the DataFlowProgramming framework nodeeditor, shader programming becomes easier to understand.
Inspired by CI|CD pipeline, we decided to make a frame pipeline editor, so that not only programmers, but everyone can configure the engine frame render process.
- Forward Rendering?
- Deferred Shading?
- Forward+ (Tiled Forward Rendering)? Try configuring it by your needs.
Most of the engine's Functionality was implemented by configurable modules. that means when you release your app, you can just choose the module you really need. Which makes your app smaller in size and more efficiently running.
With Timeline, you can animate everything. You can not only animate any Object's (Node, Setting, Res) property. But also you can call any Object's function.
You can compute the value of one property based on the value of another property, possibly on a different node. This lets you duplicate values, or makes values relative to other values, and have the Echo automatically update them whenever they change.
Echo is licensed under the MIT license. You can just do what you want as you wish.
Example | Screenshot | Description | Download |
---|---|---|---|
Build-House | A little build house game, used for test sprite node | build-house-android.apk | |
Spine | Spine 2d animation | ||
Live2D | live2d animation | ||
Pbr | gltf and light prob test | ||
Force Field | Force Field Effect; Shader Graph + Procedural Sphere | ||
Gaussian Blur | Gaussian blur; Shader Graph + Procedural plane | ||
Zoom Blur | Zoom blur; Shader Graph + Procedural plane |