Easiest method is to compile the DLL using the engine project - it is a sub project in the generated engine solution file.
--- Further info:
Regarding splitting GameSDK into its own separate project:
This won't work using the generate solution option for the following reasons:
1. The GameSDK code redefines function bodies in different uber files which, when generated using the default generate solution option, will combine folders into uber incorrect files. (disabling unity build could help with this, untested.
2. Certain files are not meant to be compiled (remnants of legacy code), which will break compilation. (you need to remove these files from the cmakelists)
3. The include directories, for perception manager and cry lobby, are not added by the deafult generated cmakelists.
So compiling via the engine source solution is the only way AFAIK.
Ok so I got it separated and working, these are the steps I took, I have attached the required cmakelists.txt file needed below;
1. Copy the GameSDK folder somewhere outside the engine directory.
2. Create a folder called Code
3. Copy the boost sdk from the SDK zip for your cryengine version to the launcher engine (if using launcher engine - it is default).
4. Copy the GameSDK code from CRYENGINE\Code\GameSDK\GameDll to your project Code folder.
5. Edit the CryGameSDK.cryproject and put the Code folder name like so:
6 Generate solution as you would for any other project by using the cryproject file.
7. Delete everything in solutions\win64 EXCEPT CMakeCache.txt
8. Replace the generated cmakelists.txt file in the code folder with the attached file in this post.
9. Click "Open CMake GUI" by right clicking on the cryproject file then Configure->Generate->Open Project.
10. You should now be able to build and subsequently launch/edit the GameSDK project as usual.
Warning: Switching engine version and/or generating solution will break the project. So you will have to manually edit the cmakelists file if you are adding or removing files. You may need to repeat this process as the generated uber files will not contain your changes (unless you manually edit those too) - untested.
NOTE: You will need to modify the provided cmakelists file and match up the directory paths inside (project path/engine path).
Technical Community Manager
Here to help the community and social channels grow and thrive.
My personal belongings;
| My GitHub
| Splash Plugin