Publisher | FireDragonGameStudio |
---|---|
File size | 2.74MB |
Number of files | 23 |
Latest version | 1.0.1 |
Latest release date | 2025-02-12 03:43:13 |
First release date | 2025-02-12 03:43:13 |
Supported Unity versions | 2018.4.2 or higher |
SimpleWebRTC is a Unity-based WebRTC wrapper that facilitates peer-to-peer audio, video, and data communication over WebRTC using Unitys WebRTC package https://docs.unity3d.com/Packages/[email protected]/manual/index.html. It leverages WebSockets for signaling and supports both video and audio streaming.
A tutorial YouTube video can be found here: https://www.youtube.com/watch?v=-CwJTgt_Z3M
Simple Installation
- Make sure, that the required dependencies are installed (TextMeshPro, Unity WebRTC, NativeWebSocket (https://github.com/endel/NativeWebSocket)).
- Go to the Unity AssetStore page: https://assetstore.unity.com/packages/slug/309727
- Install the package via Unity AssetStore.
Installation using the releases page
- Got to the releases page and download the latest release from https://github.com/FireDragonGameStudio/SimpleWebRTC/releases
- Make sure, that the required dependencies are installed (TextMeshPro, Unity WebRTC, NativeWebSocket (https://github.com/endel/NativeWebSocket)).
- Import the package into your Unity project.
Manual Installation
- Clone the repository: git clone https://github.com/FireDragonGameStudio/SimpleWebRTC
- Open the Unity project in the Unity Editor.
- Ensure that the required dependencies (such as TextMeshPro, Unity WebRTC and NativeWebSocket) are installed.
Usage of WebRTCConnection Component
The WebRTCConnection component manages the WebRTC connection and can be attached to a GameObject in Unity.
Following sample scenes are included in the pacakge:
- WebSocket-TestConnection: For testing the wecksocket connection separately.
- WebRTC-SingleClient-STUNConnection: Testing STUN connection for a single client. Works standalone and can be deployed to clients. Make sure to set the LocalPeerId for each client individually.
- WebRTC-SingleClient-wLobby-STUNConnection: A simple Lobby example for handling multiple STUN WebRTC clients. SimpleLobbyManager.cs shows an example, how to use SimpleWebRTC via C#.
- WebRTC-MultipleClients-STUNConnection: Shows how multiple clients can be connected via peer-to-peer connections and share data, video and audio transmissions.
Example code
WebRTCConnection connection = gameObject.GetComponent<WebRTCConnection>();
connection.Connect(); // Establish WebSocket connection
// after a WebRTC peer-to-peer connection is established
connection.StartVideoTransmission(); // Begin video streaming
connection.SendDataChannelMessage("Hello Peer!"); // Send a message over the data channel
For further information check https://github.com/FireDragonGameStudio/SimpleWebRTC