All Projects → 2shady4u → godot-cpp-ci

2shady4u / godot-cpp-ci

Licence: MIT license
Docker image and Github Actions to automatically compile Godot C++ GDNative libraries.

Programming Languages

python
139335 projects - #7 most used programming language
C++
36643 projects - #6 most used programming language
Makefile
30231 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to godot-cpp-ci

Godot Ci
Docker image to export Godot Engine games. Templates for Gitlab CI and GitHub Actions to deploy to GitLab Pages/GitHub Pages/Itch.io.
Stars: ✭ 168 (+700%)
Mutual labels:  gitlab, gitlab-ci, godot, godot-engine
godot-ci
Docker image to export Godot Engine games. Templates for Gitlab CI and GitHub Actions to deploy to GitLab Pages/GitHub Pages/Itch.io.
Stars: ✭ 316 (+1404.76%)
Mutual labels:  gitlab, gitlab-ci, godot, godot-engine
gitlab-ci-android-fastlane
Docker image for building android apps on Gitlab CI
Stars: ✭ 25 (+19.05%)
Mutual labels:  gitlab, gitlab-ci
godot-portal-demo
Experimenting with portals in Godot Engine
Stars: ✭ 66 (+214.29%)
Mutual labels:  godot, godot-engine
godot-extras
My collection of various plugins, modules, or patches for Godot
Stars: ✭ 108 (+414.29%)
Mutual labels:  godot, godot-engine
Realistic-Atmosphere-Godot-and-UE4
A realistic atmosphere material for both the Godot game engine and Unreal Engine 4
Stars: ✭ 119 (+466.67%)
Mutual labels:  godot, godot-engine
godot-cpp-cmake
CMake scripts to build cross-platform GDNative C++ bindings
Stars: ✭ 20 (-4.76%)
Mutual labels:  godot, godot-engine
gitlab-ci-runner-marathon
A customized Docker image for running scalable GitLab CI runners on Marathon
Stars: ✭ 14 (-33.33%)
Mutual labels:  gitlab, gitlab-ci
Game-Examples
Godot game examples for gotm.io - the Godot Platform!
Stars: ✭ 27 (+28.57%)
Mutual labels:  godot, godot-engine
Project-Map
No description or website provided.
Stars: ✭ 52 (+147.62%)
Mutual labels:  godot, godot-engine
godot-awesome-splash
Collection of splash screens in Godot
Stars: ✭ 137 (+552.38%)
Mutual labels:  godot, godot-engine
breakable
A breakout-like game made with Godot Engine
Stars: ✭ 56 (+166.67%)
Mutual labels:  godot, godot-engine
godot-android-plugin-firebase
Godot 3.2.2 Android plugin for Firebase
Stars: ✭ 41 (+95.24%)
Mutual labels:  godot, godot-engine
toziuha-night-oota
Opensource Metroidvania inspired on Castlevania Order of Ecclesia
Stars: ✭ 78 (+271.43%)
Mutual labels:  godot, godot-engine
GodotFAN
Facebook Audience Network Ad module for godot
Stars: ✭ 25 (+19.05%)
Mutual labels:  godot, godot-engine
Godot-Top-down-Shooter-Tutorial
This repository contains the source code for the Godot Top-down Shooter Tutorial series.
Stars: ✭ 41 (+95.24%)
Mutual labels:  godot, godot-engine
godot-admob-editor
This repository is for Godot's Addons to integrate natively AdMob to your Game Project without much configurations, with a beautiful UI and directly inside Godot Editor!
Stars: ✭ 43 (+104.76%)
Mutual labels:  godot, godot-engine
godot box2d
A C++ module that integrates the Box2D library with the Godot game engine by providing nodes for standard Box2D objects.
Stars: ✭ 32 (+52.38%)
Mutual labels:  godot, godot-engine
gitlab-ci-variables-cli
CLI tool to allow setting bulk project variables on Gitlab CI
Stars: ✭ 38 (+80.95%)
Mutual labels:  gitlab, gitlab-ci
Godot FPC Base
A first person camera base project for Godot 3.x to help anyone get a jumpstart.
Stars: ✭ 39 (+85.71%)
Mutual labels:  godot, godot-engine

godot-cpp-ci

Docker image and Github Actions to automatically compile Godot C++ GDNative libraries.

Github Actions:

🏁 Windows Builds 🐧 Linux Builds 🍎 macOS Builds 🍏 iOS Builds 🤖 Android Builds 🌐 Javascript Builds

Exported HMTL5 build is deployed here.

Gitlab Runners:

Pipeline Status

Heavily inspired and based on both the CI/CD provided by godot-ci and the automated workflow of Godot itself.

Docker Hub

https://hub.docker.com/r/ponders/godot-cpp-ci/

Gitlab Mirror

This repository is mirrored to Gitlab here.

How To Use

.gitlab-ci.yml and .github/workflows/*.yml are included in this project as reference. In most cases, just copying them to your own repository does the job.

Android

For android compilation purposes, a special Android.mk-file as well as a jni/Application.mk-file are included in the gdnative_cpp_example-folder.

Again, those files need to be copied and modified for your own repository purposes.

Availability Matrix

Github Gitlab
windows ✔️ ✔️
x11 ✔️ ✔️
osx ✔️
ios ✔️
android ✔️
html5 ✔️

Frequently Asked Questions (FAQ)

1. Why does this repository export to the release-target by default?

Exporting to the debug-target gives potential dependency problems, especially on Windows, that might break your plugin for users that don't have any dev environment set up on their device.

In those cases, Godot will fail to load the library and print an error of following form (or similar):

Can't open dynamic library: bin/win64/libgdexample.dll, error: Error 126: The specified module could not be found.
.
modules/gdnative/gdnative.cpp:501 - No valid library handle, can't get symbol from GDNative object
modules/gdnative/nativescript/nativescript.cpp:1506 - No nativescript_init in "res://bin/win64/libgdexample.dll" found

These kind of errors might not be apparent on your development machine, so it's always a good idea to check for this kind of issues on a non-development machine!

Handy tool for checking for missing dependencies of any *.dll can be found here.

2. Why is the version of Emscripten set to 2.0.25 and not to the lastest one?

Later versions of Emscripten don't create binaries that are compatible with the Godot API due to version mismatch between engine and binary.
The currently used version for Godot engine compilation can be verified in the main Godot repository, as found here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].