This article covers a detailed walk through of the steps required to successfully compile and run the blank C++ project template with a custom engine cloned from Git.
- Download and install the latest CRYENGINE Launcher available from https://www.cryengine.com
- Create a New C++ blank project from the CRYENGINE Launcher. This will download the corresponding release version of the Engine (if it has not been installed previously)
- Run the following git command to make a local clone for your custom engine git clone --branch main https://github.com/CRYTEK-CRYENGINE/CRYENGINE.git
- Download the required SDK's from the release page: https://github.com/CRYTEK-CRYENGINE/CRYENGINE/releases
- Run cry_waf.exe from the custom engine and create a gamesdk project. Open the generated solution and compile [GameSDK] Profile x64
- Copy the engine .pak-files from a release build to the custom engine. You can easily find the location of a downloaded release engine by navigating to "Library/Installed Engines" from within the CRYENGINE Launcher and selecting "Reveal in Explorer" from the Engine versions dropdown button. If you avoid this step the custom engine will crash due to missing DDS files
- Run the batch file Tools\RegisterLocalBuild.bat from your newly cloned custom engine. This will register the cloned engine path under the name "local"
- Go to your blank C++ project folder and modify your project.cfg's "engine_version=local"
- Run Code_CPP.bat from within the same folder and build Release x64
You can now run your game project using a custom engine from Visual Studio or the Game.bat file. See comments below for issues regarding Sandbox and custom engines.
- We do not provide Sandbox with the custom engine, therefore Editor.bat will not work after modifying the project.cfg
- While we do not provide an option for a custom Sandbox, then we need an easy way to suggest to users what release version of Sandbox they should use for a project using a custom engine. This is required for CRYENGINE Launcher as well as Editor.bat
- Also, the custom engine modifications a user can carry out will always be limited to 'minor changes' - this ensures that your Game.dll remains compatible with the release version of Sandbox and your custom engine