GDExtension repo template taken from: https://github.com/nathanfranke/gdextension
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Nathan Franke 17de537c4e
update upstream (Vector4 support)
3 years ago
.github/workflows add .gitattributes, minor github workflows change 4 years ago
godot-cpp@3cc1409210 update upstream (Vector4 support) 3 years ago
project use gdextension config name as library name 3 years ago
src add _ready and _process to example 4 years ago
.gitattributes add .gitattributes, minor github workflows change 4 years ago
.gitignore move project files to subdirectory, remove extra imports 4 years ago
.gitmodules add code 4 years ago
LICENSE add LICENSE 4 years ago
README.md update README to specify that artifacts are not full projects 3 years ago
SConstruct update comments in SConstruct 3 years ago

README.md

gdextension

GDExtension template that automatically builds into a self-contained addon for the Godot Asset Library.

Getting started:

  1. Clone this repository (or a new repository with this template) with submodules.
    • git clone --recurse-submodules https://github.com/nathanfranke/gdextension.git
      cd gdextension
  2. Build all libraries for the current platform.
    • scons
  3. Import, edit, and play project/ using Godot Engine 4+.
  4. Check the output:
    Hello GDScript!
    Hello GDExtension Node!
    Hello GDExtension Singleton!
    

Repository structure:

  • project/ - Godot project boilerplate.
    • addons/example/ - Files to be distributed to other projects.¹
    • demo/ - Scenes and scripts for internal testing. Not strictly necessary.
  • src/ - Source code of this extension.
  • godot-cpp/ - Submodule needed for GDExtension compilation.

¹ Before distributing as an addon, all platform binaries must be in the bin/ directory. This is done automatically by GitHub Actions.

Make it your own:

  1. Rename project/addons/example/ and project/addons/example/example.gdextension.
  2. Replace LICENSE, README.md, and your code in src/.
  3. Not required, but consider leaving a note about this template if you found it helpful.

Distributing your extension on the Godot Asset Library:

  1. Go to Repository→Actions and download the latest artifact.
  2. Test the artifact by extracting the addon into a project.
  3. Create a new release on GitHub, uploading the artifact as an asset.
  4. On the asset, Right Click→Copy Link to get a direct file URL. Don't use the artifacts directly from GitHub Actions, as they expire.
  5. When submitting/updating on the Godot Asset Library, Change "Repository host" to Custom and "Download URL" to the one you copied.