Main Repo for the OpenVic Project
For detailed instructions, view the Contributor Quickstart Guide here
Warning
If you are using Arch Linux, do not use the Arch repo package, it is known to break under some GDExtensions, use the official release file.
See System Requirements.
- Clone the OpenVic Repo to a suitable folder using the git command
git clone https://github.com/OpenVicProject/OpenVic.git - Update the submodules by executing the git command
git submodule update --init --recursive(only the first-party OpenVic repos are submodules; all third-party dependencies are fetched automatically by CMake during configure)
Note that using a zip download instead of cloning means manually managing the submodules. It is strongly recommended to use git to obtain the source code.
See Cloning.
- Install Godot 4.7, CMake 3.28+, and Ninja for your system.
- Run the command
git submodule update --init --recursiveto retrieve all related submodules. - Configure and build with the preset for your platform (
windows-x64-template_debug,linux-x64-template_debug, ormacos-universal-template_debug):The build copies the extension library intocmake --preset windows-x64-template_debug cmake --build --preset windows-x64-template_debug
game/bin/openvic. - Open with Godot 4, click import and navigate to the
gamedirectory. - Press "Import & Edit", wait for the Editor to finish re-importing assets, and then close the Editor without saving and reopen the project.
- Once loaded, click the play button at the top right, and you should see and hear the game application open on the main menu.
- Build the extension with the
*-template_debugpreset (or*-template_releasefor release), as in the Build/Run instructions above. - Open
game/project.godotwith Godot 4. - Click
Projectat the top left, clickExport. - If you do not have the templates, you must download the templates, there is highlighted white text at the bottom of the Export subwindow that opens up the template manager for you to download.
- Click
Export All:- If you built with the default or debug target you must export with
Debug. - If you built with the release target you must export
Release.
- If you built with the default or debug target you must export with
- Files will be found in platform specific directories in
game/export:- On Windows run
game/export/Windows/OpenVic.exe. - On Linux x86_64 run
game/export/Linux-x86_64/OpenVic.sh.
- On Windows run
- Configure and build the dev preset (
GODOTCPP_DEV_BUILD, Debug config):cmake --preset windows-x64-template_debug-dev && cmake --build --preset windows-x64-template_debug-dev. - Setup your IDE so your Command/Host/Launching App is your Godot 4 binary and the Working Directory is the
gamedirectory. - Start the debugger.
See Debugging.
Every time you add something to the GDExtension you need to add to the class reference documentation, to do such:
- Build the extension (see Build/Run Instructions).
- Run your Godot 4 binary with
--doctool --headless ../extension --gdextension-docsin thegamedirectory. - Write documentation in the style of Godot, see Godot's Writing Documentation: Class Reference Guides.
- Build again.
Windows note: doctool may not work in powershell/vscode terminal use command prompt directly.
If you change anything that causes new behavior in the GDExtension you should also change the corresponding class reference documentation.