corefan / engine.blade

a cross platform 3d engine using c++98

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

blade

a cross platform 3d engine using c++98

Features

  1. cross platform arthitecture, easy to add support for more platforms. current supported platforms are Win32(x64/x86), Android(ARM/ARM64). iOS is planned.
  2. plugin based framework, maximum decoupling and flexiable customization.
  3. task based parallel system. each subsystem has own tasks and cooperate using parallel state data.
  4. multiple rendering API support: D3D9, OpenGL ES 3, Vulkan is planned.
  5. graphics features: large world & terrains; 3DS Max importer (deprecated); FBX importer; Dual quaternion animation; IK; HBAO, HDR Post Effects. CSM shadow maps, etc. Customizable rendering pipelines, using xml as config script.
  6. Editor & scene editing (to be improved).
  7. fast build/compilation, for fast prototyping/iteration. Win32 debug takes 1.5 min on i7 CPU, Android takes about 5 mins.
  8. data binding to XML (non-intrusive); simple binary XML format.
  9. multi-language supprt.

How to build

  1. Build dependencies
    Open Denpendices/build/VC14.1/ALL/All_Denpendency.sln and batch build all (MENU:Build => Batch Build..., press "Selected All" and then "Build").
    Open All_Dpendency_Android & batch build all if you want to build Android version.
    After that, you probably don't need to touch that solution(s) any more, exept that new dependencies were added.
    there're VC14 (VS2015 projects) too, if you want to debug & run on Android, VC14.1 (VS2017) is recommended, since older version may have bugs on installing packages & start apps.

  2. Build tools
    Open Build/VC14.1/Tools.sln, build only Release|Win32. Blade uses win32 tools to get maximum compatibility.

  3. Build Blade & Run
    Open Build/VC14.1/Blade.sln (or Blade_Android.sln for android).
    select the build type and build.
    set GameStudio (AppPackage_Android for android) as startup project.

  4. Editor mode
    Supported on Windows version (Blade.sln) only.
    Right Click "GameStudio" project => Configuration Properties => Debugging => Command Arguments: set "--mode=Editor"

Scree shots

Config panel Editor Terrain Editing

About

a cross platform 3d engine using c++98

License:Other


Languages

Language:C++ 94.2%Language:C 2.8%Language:Shell 1.7%Language:HLSL 0.9%Language:Makefile 0.1%Language:Java 0.1%Language:Objective-C 0.1%Language:Batchfile 0.0%Language:QMake 0.0%