master branch is current development branch and can introduce breaking changes to plugin's public interface.
3.3 branch aim is to provide same public interface as it was before switch to new iOS plugin system.
-
Clone this repository and it's submodules:
git clone --recurse-submodules https://github.com/godotengine/godot-ios-pluginsYou might require to update
godotsubmodule in case you require latest (unreleased) Godot changes. To do this run:cd godot git fetch git checkout origin/<branch you want to use> -
Alternatively you can use pre-extracted Godot headers that will be provided with release tag at Releases page.
To do this clone this repo without submodules:git clone https://github.com/godotengine/godot-ios-pluginsThen place extracted Godot headers in
godotdirectory.
If you choose this option you can skip next step to genarate of Godot headers. -
To generate Godot headers you need to run compilation command inside
godotsubmodule directory. Example:scons platform=iphone target=debugYou don't have to wait for full engine compilation as header files are generated first, so once an actual compilation starts you can stop this command.
-
Running
scons target=<debug|release|release_debug> arch=<arch> simulator=<no|yes> plugin=<plugin_name> version=<3.x|4.0>will generate
.astatic library for chosen target.
Do note, that Godot's defaultdebugexport template is compiled withrelease_debugtarget.
-
Run
./scripts/generate_static_library.sh <plugin_name> <debug|release|release_debug> <godot_version>to generatefatstatic library with specific configuration. -
The result
.abinary will be stored inbinfolder.
-
Run
./scripts/generate_xcframework.sh <plugin_name> <debug|release|release_debug> <godot_version>to generatexcframeworkwith specific configuration.xcframeworkallows plugin to support botharm64device andarm64simulator. -
The result
.xcframeworkwill be stored inbinfolder as well as intermidiate.abinaries.
Each plugin provides a README.md file which contains a documentation and examples.