Ethereal Engine - Cross-platform C++ Game Engine
Get more details at codescene.io.
INFO
Using c++14
WYSIWYG Editor
STATUS
WIP - not production ready in any way
Building
Don't forget to update submodules
git clone https://github.com/volcoma/EtherealEngine.git
cd EtherealEngine
git submodule init
git submodule update
mkdir build
cd build
cmake ..
PLATFORMS
It is written in a cross-platform manner using .
ASSETS
Some high quality assets: https://github.com/volcoma/Library
Supported texture formats: png, tga, dds, ktx, pvr
Supported mesh formats: obj, fbx, dae, 3ds
Supported audio formats: ogg, wav
SUGGESTIONS AND ISSUES
Any suggestions and help will be appreciated.
BUILD
The engine uses the CMake build system.
CODEBASE
Using the latest and greatest features of the language.
CODE STYLE
#include "some_header.h"
#include "some_other_header_impl.hpp"
namespace nsp
{
class some_class
{
public:
//-----------------------------------------------------------------------------
// Name : some_method ()
/// <summary>
/// This is a method comment description.
/// </summary>
//-----------------------------------------------------------------------------
void some_method();
//-----------------------------------------------------------------------------
// Name : some_templated_method ()
/// <summary>
/// This is a method comment description.
/// </summary>
//-----------------------------------------------------------------------------
template<typename T>
void some_templated_method();
public:
/// this is a member comment
int some_public_member = 0;
private:
/// this is a member comment
int some_private_member_ = 0;
}
template<typename T>
inline void some_class::some_templated_method()
{
// If the class is fully templated it is acceptable to put this inside the class
}
PREVIEW
LIBRARIES
bgfx - https://github.com/bkaradzic/bgfx
cereal - https://github.com/USCiLab/cereal
rttr - https://github.com/rttrorg/rttr
spdlog - https://github.com/gabime/spdlog
imgui - https://github.com/ocornut/imgui
assimp - https://github.com/assimp/assimp
glm - https://github.com/g-truc/glm
openal-soft = https://github.com/kcat/openal-soft