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.
|
|
4 years ago | |
|---|---|---|
| .github/workflows | 4 years ago | |
| godot-cpp@8dbaf5a7ff | 4 years ago | |
| project | 4 years ago | |
| src | 4 years ago | |
| .gitignore | 4 years ago | |
| .gitmodules | 4 years ago | |
| LICENSE | 4 years ago | |
| README.md | 4 years ago | |
| SConstruct | 4 years ago | |
README.md
gdextension
Self-contained gdextension template for Godot Engine 4.x
Getting started:
- Clone this repository (or a new repository with this template) with submodules.
git clone --recurse-submodules https://github.com/nathanfranke/gdextension.git
cd gdextension
- Build all libraries for the current platform.
scons
- Import, edit, and play
project/using Godot Engine (4.x or later). - Check the output:
Hello GDScript! Hello GDExtension Node! Hello GDExtension Singleton!
Repository structure:
project/- Godot project template.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:
- Rename
project/addons/example/andproject/addons/example/example.gdextension. - Replace
LICENSEandREADME.md. - Not required, but consider leaving a note about this template if you found it helpful.
Distributing your extension on the Godot Asset Library:
- Go to Repository→Actions→Latest Action and download the artifact.
- Test the artifact (it should be a working Godot project).
- Create a new release on GitHub, uploading the artifact as an asset.
- On the asset, Right Click→Copy Link to get a direct file URL.
- When submitting/updating on the Godot Asset Library, Change
Repository hosttoCustomandDownload URLto the one you copied.