Fabio Alessandrelli 189c353264 [CI] Use organization's repository for automated builds.
Update README.md to reflect new build sources.
2021-07-08 23:04:16 +02:00
2021-07-02 18:11:35 +02:00
2021-07-02 15:12:41 +02:00
2019-05-16 10:32:51 +02:00
2020-01-03 19:41:21 +01:00
2018-08-11 16:51:13 +02:00

GDNative WebRTC plugin for Godot

Getting Started

Download latest binary version GitHub

Compiling

Clone this repository with the following command to checkout both godot-cpp and godot-headers dependencies.

$ git clone --recurse-submodules https://github.com/godotengine/webrtc-native.git

Note that if you wish to use a specific branch, add the -b option to the clone command:

$ git clone --recurse-submodules -b 3.2 https://github.com/godotengine/webrtc-native.git

If you already checked out the branch use the following commands to update the dependencies:

$ git submodule update --init --recursive

Right now our directory structure should look like this:

webrtc-native/
├─bin/
├─godot-cpp/
| └─godot-headers/
├─src/
└─webrtc/

Compiling the cpp bindings library

First, we need to compile our cpp bindings library:

$ cd godot-cpp
$ scons platform=<your platform> generate_bindings=yes
$ cd ..

Replace <your platform> with either windows, linux or osx.

Include use_llvm=yes for using clang++

Include target=runtime to build a runtime build (windows only at the moment)

Include target=release or target=debug for release or debug build.

The resulting library will be created in godot-cpp/bin/, take note of its name as it will be different depending on platform.

Building WebRTC

Building WebRTC is quite a complex task, involves huge downloads and long build times, and produces multiple output libraries that needs to bundled together.

To make things easier, a set of GitHub Actions are used to generate the library for this plugin, available in this repository.

Alternatively, download the latest pre-compiled libraries.

Extract content of include into webrtc/include and content of bin into webrtc/<your platform>

Compiling the plugin.

$ scons platform=<your platform> target=<your target>

The generated library and associated tres will be placed in bin/webrtc/ or bin/webrtc_debug/ according to the desired target. You simply need to copy that folder to the root folder of your project.

Description
The official GDNative WebRTC implementation for non-html exports.
Readme MIT 422 KiB
Languages
C++ 65.8%
Python 26.4%
Shell 7.8%