
This includes functionality for loading files from the disk, retrieving the computer name, etc.

There are also some platform-specific File and System functions that may need to be implemented for a new platform. That being said, because the engine relies on SDL, you can only build and run on a platform that is supported by SDL! Platform-Specific CodeĪ lot of platform-specific code is taken care of by SDL. To support a new platform, the CMake file likely needs to be modified. Most of the CMake files probably don't need to change to support a new platform, but there are some platform-specific bits in there. To support a new platform, the library files for that platform must be built and added to the appropriate Libraries subdirectory.
#Gabriel knight scummvm software#
The engine currently uses the following third-party libraries:Īll library files are included in the repo, so no software need be installed before building and running. Most of the engine code is platform-agnostic, but there are some key things that must be taken care of to support a new platform. The engine currently supports Mac and Windows. If you'd prefer to use the native Command Prompt, you'll just need to manually run the CMake command in the bash script file instead. This will generate a VS 2022 project at Build/Windows. Then, I'd recommend using Git Bash to execute the Build/GenerateWindows.sh script.
#Gabriel knight scummvm install#
When you install CMake, I'd recommend adding it to your path. The Xcode project will be generated at Build/Mac. Then, use terminal to execute the script at Build/GenerateMac.sh.


I've only tested Xcode and Visual Studio at this point, but it'll likely work with other build systems with a bit of effort. Using CMake, you can generate the project files for your preferred IDE. The project uses CMake, which means the definitions of what targets to create, which source files to include, and which libraries to link against are defined in CMakeLists.txt in the project root.
#Gabriel knight scummvm full#
This is a way you can test out the engine without purchasing the full game. The engine will detect this file and launch in "demo mode". Simply copy Gk3demo.brn into the data folder. The Gabriel Knight 3 demo is also supported. On Mac, copy them to Gabriel Knight 3.app/Contents/Resources/Data. On Windows, copy them to the Data folder in the exe directory. Prebuilt executables (such as those obtained on the "Releases" page) also require data files to be copied before running. If building from source, put all data files into the Data directory before building/running. The data files are all Barn (.brn) asset bundles and all video files (.bik and. You will need to obtain a copy of GK3 (available on Steam or GOG) to get the data files.

This repository does not contain the game's data files, since those are copyrighted material. See my blog post introducing the project for more in-depth info! Getting StartedĬurrently, GEngine runs on Mac or Windows. Completely new features can also be implemented! Since GK3 is heavily data-driven, the idea is to build a newer, more modern engine that can use the original's data files. The original game only supported Windows, and it's also a bit buggy on modern hardware. The goal of this project is to create a cross-platform game engine capable of playing GK3. G-Engine is a C++ game engine that can parse and use the data files from the classic 3D adventure game Gabriel Knight 3: Blood of the Sacred, Blood of the Damned (GK3), developed and published by Sierra Studios in 1999.
