Unity Render Streaming is a solution that provides Unity's high quality rendering abilities via browser. It's designed to meet the needs of tasks like viewing car configurators or architectural models on mobile devices.
This solution's streaming technology takes advantage of WebRTC, and developers can even use the WebRTC package to create their own unique solutions.
This repository manages 2 packages. Details can be found in the README.md
for each package.
This solution is compatible with Unity 2019.1. Currently it only runs in a Windows 64-bit environment. Unity 2018.3 relies on the New Input System, so it is incompatible with this solution.
Browser support depends on the status of each browser's WebRTC support.
-
Desktop Chrome
-
Desktop Firefox
-
Desktop Safari
-
Android Chrome
-
iOS Safari
-
com.unity.renderstreaming
- LICENSE.md -
com.unity.template.renderstreaming
- LICENSE.md
This solution is optimised for NVIDIA graphics cards. Using a recommended graphics card will allow streaming with lower latency. See NVIDIA's NVIDIA VIDEO CODEC SDK webpage for a list of recommended graphics cards.
<root>
├── Assets
│ ├── Plugins
│ ├── Scenes
│ ├── Scripts
│ └── Tests
├── EmptyProjectForTest~
├── Packages
│ ├── com.unity.renderstreaming
│ └── com.unity.template.renderstreaming
├── ProjectSettings
├── Plugin
│ ├── WebRTCPlugin
│ └── unity
├── RenderStreamingSampleSrc~
│ └── RS_HDRPSampleSrc_1.x
└── WebApp
├── public
├── src
└── test
Version | libwebrtc version | Focus |
---|---|---|
1.0 |
M72 | - First release |
2.0 |
- Multi camera - DirectX12 (DXR) Support - Simulcast |
|
2.1 |
- Linux support - Add HW encoder |
Read this page.