Skip to content

yushroom/FishEngine

Repository files navigation

FishEngine

What is FishEngine

FishEngine is a simple, Unity-like game engine, mainly written in C++14.

1

2

Features

  • Unity-like Editor
  • Nearly same API with Unity
  • Physically Based Rendering (PBR)
  • Deferred Rendering
  • Asset management (WIP)
  • Physics system (WIP)
  • Audio(WIP)

How to Build


Before your build, you will need to have some additional software installed:

  • Git.
  • CMake. Version 3.0.0 or later is required.
  • Python. Version 2.7.x is required, 3.x is not officially supported because libclang has no python3 binding.
  • Visual Studio 2015, Update 3 (Windows only)

for all platforms:

for windows:

  • download and install Clang, clang is required if you want to automatically generate reflection code.

Step 1. Clone the sources and create a build directory.

git clone https://github.com/yushroom/FishEngine.git
cd FishEngine/Engine
mkdir build && cd build

Step 2. Use CMake to generate project file using any desired generator. Replace Qt5_DIR, PhysX_ROOT_DIR and FBXSDK_DIR with yours. Or you can use camke-gui to do the same thing(recommended).

cmake -G "Visual Studio 14 Win64" -DQt5_DIR=D:\Library\Qt\Qt5.8.0\5.8\msvc2015_64\lib\cmake\Qt5 -DPhysX_ROOT_DIR=D:\program\PhysX-3.3\PhysXSDK -DFBXSDK_DIR="D:\Library\FBX SDK\2017.1" ..

Step 3. Finally, you can use any IDE according to you selected generator, but you can also just build straight from CMake. Build results can be found in Engine/Binary.

cmake --build . --target FishEditor --config Release

3rd Party Libraries

for all platforms:

for MS Windows:

  • clang (c++ reflection)
  • glew (opengl loader)