Run your packaged Unity app against Unity's own Render Streaming web server on your computer, before you upload it. If it streams and takes input here, it will on Eagle 3D Streaming.
Three things, and almost every Unity upload that fails, fails one of them:
| Item | Why |
|---|---|
Package com.unity.renderstreaming 3.1 | This is what streams; Eagle 3D Streaming speaks its protocol. |
| Active Input Handling = Input System Package (Player Settings) | Browser input arrives as Input System devices. |
| A Signaling Manager with a Broadcast, holding a Video Stream Sender, an Input Receiver and, for sound, an Audio Stream Sender | One viewer per session; the Broadcast answers every connection. |
| Video Stream Sender source = Screen | Includes your screen-space UI. A Camera source leaves overlay UI out. |
| EventSystem with Input System UI Input Module | So browser clicks and taps press your UI buttons. |
| Run In Background on (Player Settings) | The app keeps rendering when its window is not focused, which on a server it never is. |
The signaling settings are given on the command line when Eagle 3D Streaming starts your app, so leave the Signaling Manager on its default settings.
webserver.exe for the same version as your package.webserver.exe -p 8090 -t websocket -m publicYourApp.exe -signalingType websocket -signalingUrl ws://127.0.0.1:8090 -iceServerUrl stun:stun.l.google.com:19302 -screen-fullscreen 0 -screen-width 1280 -screen-height 720http://127.0.0.1:8090/receiver/ in Chrome and press play.| What you see | Why | What to do |
|---|---|---|
The app's log: Could not instantiate RTCPeerConnection | No ICE server was given; the settings baked into some builds are invalid. | Always pass -iceServerUrl, as above. |
There should be 'YourApp_Data' folder next to the executable | The exe was renamed. Unity finds its data by the exe's name. | Keep the exe name as built, and upload the whole folder. |
| The browser connects but shows no picture | No Video Stream Sender in the Broadcast, or it is not running. | Add it to the Broadcast's streams. |
| The picture is there but clicks do nothing | The project is still on the old Input Manager, there is no Input Receiver, or the EventSystem uses the Standalone Input Module. | Switch Active Input Handling to the Input System, add the Input Receiver, use the Input System UI Input Module. |
The app's log shows Connecting WS ws://127.0.0.1:80 over and over, beside the working connection | A second Signaling Manager, or Render Streaming's automatic streaming, is using the project's default signaling settings. | Keep one Signaling Manager in the scene and switch off Automatic Streaming in Project Settings › Render Streaming. |
No binding composite with name 'DeltaWithButton' has been registered | A known problem in Unity's own sample project. | Harmless for your own app. |
The Unreal Engine version of this page.
Last updated