Compiling
Quick start
Use the commands below to get Banshee up and running as quickly as possible. Scroll further below for advanced build options that allow for more customization.
Windows (Visual Studio 2015)
Make sure you have installed git and CMake (version 3.7.2 or newer). Make sure paths to their binaries are in your PATH enviroment variable.
Run the following commands and the .sln will be placed in the /Build folder:
git clone https://github.com/BearishSun/BansheeEngine.git
cd BansheeEngine
mkdir Build
cd Build
cmake -G "Visual Studio 14 2015 Win64" ../Source
Note: If compilation fails with errors related to DirectX, you need to install relevant DirectX dependencies as described here.
Linux
Coming soon
OS X
Coming soon
Customizing the build
By default the process above will fetch the master branch. If required switch to a different branch before building:
- preview - This branch always contains latest "stable" pre-release version. This might be a few months behind master.
- master - This branch contains the latest changes, might be quite unstable and might not even compile. Use this if you absolutely need the bleeding edge changes.
Variety of CMake variables are provided that allow you to customize the build:
- By default the process above will build the complete Banshee 3D runtime. You can pick between two modes using the BUILD_SCOPE variable in CMake:
- Runtime (default) - This will compile the entire engine, scripting system and the editor. This is intended for those that plan on using the editor as their main environment for development.
- Framework - This will compile only the C++ engine framework without the editor or the scripting API. This is intended for those that prefer to develop more directly with less high level abstractions.
- Additional variables allow you to pick between the render API (Vulkan, DirectX, OpenGL), audio module (FMOD, OpenAudio) among other options. Run CMake to see all options.
- Note that non-default CMake options might require additional dependencies to be installed, see here.
You can choose to use a different CMake generator than those specified above, as long as the platform/compiler is supported:
- Supported platforms:
- Windows
- (Mac & Linux coming soon)
- Supported compilers:
- MSVC++ 14.0 (Visual Studio 2015)
- (Clang/GCC coming soon)
Third party dependencies
Banshee relies on a variety of third party dependencies. A set of pre-compiled dependencies are provided for every supported platform/compiler. These will be fetched automatically by the build process, but you may also download them manually or compile them from source:
For older versions of pre-compiled dependencies check the git release tag descriptions for links.
Other dependencies
The following dependencies will need to be installed manually. Which ones are required depend on the selected CMake options and your usage of Banshee (check text of each entry below).
DirectX SDK (Optional if not using DirectX)
- Only needed if on Windows 7 or earlier and using DirectX 11 render API
- Set up DXSDK_DIR environment variable pointing to the DirectX instalation
Windows SDK (Optional if not using DirectX)
- Only needed if on Windows 8 or later and using DirectX 11 render API
DirectX Debug Layer (Optional if not using DirectX)
- Only needed if on Windows 10 and using DirectX 11 render API
- Go to Settings panel (type "Settings" in Start)->System->Apps & features->Manage optional Features->Add a feature->Select "Graphics Tools"
Vulkan SDK (Optional if not using Vulkan)
- Only needed if you selected the Vulkan render API during build configuration
- https://lunarg.com/vulkan-sdk/
- If CMake complains it cannot find Vulkan, manually set the Vulkan_INSTALL_DIRS to your installation directory
Python 3.5 (Optional)
FMOD Low Level Programmer API (Optional)
- Only needed if you selected the FMOD audio module during build configuration
- http://www.fmod.org/download/
- If CMake complains it cannot find FMOD, manually set the FMOD_INSTALL_DIRS to your installation directory
- Copy the dynamic libraries from {INSTALLDIR}/api/lowlevel/lib into /bin folder in Banshee source code folder
- Use logging libraries for the Debug builds, and non-logging for OptimizedDebug and Release builds
Mono 4.2 (Optional)
- If you wish to compile managed assemblies using a Microsoft compiler (e.g. using Visual Studio) yet still be able to debug the generated assemblies, you must install Mono 4.2. and set up an environment variable MONO_INSTALL_DIR pointing to the Mono installation directory. When this is set up "pdb2mdb" script will trigger on next compile generating the needed debug symbols.
- http://www.mono-project.com/download/