mhamonic / godot-native-example

Example Godot native project using cmake

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Godot Native Example

In this project:

  • An example C++ GDNative plugin.
  • Instructions to build the plugin including what software you'll need.
  • Support for 💰Windows, 🐧Linux & 🍏MacOS (x86_x64/arm64).
  • 🤖 An automated build pipeline to build for all above platforms.

Buildling on Windows 💰

  1. Download and install:

  2. Open a CMD window and run the following commands:

git clone https://github.com/samsface/godot-native-example.git
cd godot-native-example
debug.bat
  1. Open godot-native-example.sln that should of been generated by running debug.bat in previous step.

  2. Run the godot project in the app directory of this repo. If it prints "ciao" to the output, it worked!

Building on Linux 🐧

  1. Install tooling:
sudo apt-get update && apt-get install build-essential cmake python3-pip
  1. Clone the project and build
git clone https://github.com/samsface/godot-native-example.git
cd godot-native-example
sh debug.sh
  1. Run the godot project in the app directory of this repo. If it prints "ciao" to the output, it worked!

FAQ

  • You DO NOT need to copy the build files into the Godot project. CMake does this for you.
  • You DO NOT need to restart Godot every time you rebuild. Godot will reload the plugin.
  • On Windows, you need to stop debugging in Godot to rebuild, else you'll get a permission denied error installing the dll.

Using the CI:

This project contains a github actions file that will build your project for all supported platforms every time you push changes. To use it, just Fork this project and then just push changes. You'll see the build status in the Actions tab of your fork.

  • Github actions free tier only gives you so many minutes of compute per month so be conciuous of this.

About

Example Godot native project using cmake

License:MIT License


Languages

Language:Python 44.6%Language:CMake 31.8%Language:C++ 12.1%Language:Shell 8.2%Language:Batchfile 1.7%Language:GDScript 1.5%