Compatibility
Update
The Inworld Unity SDK version 3.2 is not compatible with previous versions. If you wish to upgrade, please delete the Assets/Inworld
or Assets/Inworld.AI
folder first.
Additionally, the APIs in version 3.X and 2.X are not identical. If you are still using version 2.X, please refer to this Upgrade Manual for guidance on how to upgrade to the latest SDK.
Unity Version
The minimum supported Unity version is 2020.3.48f1. Any version below that may not be compatible.
However, if you are using MacOS and want to build MacOS applications, there is a known bug for Unity. Please upgrade to 2022.3.10f1 or newer.
What's New
From Inworld Unity SDK v3.0, we have incorporated two distinct transmission protocols: WebSocket (default) and NDK. Users can choose between the two based on their specific requirements. WebSocket is compatible with a broader range of platforms and is much smaller than NDK (around 200 KB in total) and faster, but it consumes more bandwidth. NDK uses legacy gRPC for transmission, which theoretically offers higher speed and lower bandwidth consumption.
We also now offer two different Unity SDK versions: full package InworldAI.Full and core package inworld-unity. We have separated the various modules using Unity's Assembly Definitions.
inworld-unity supports lightweight projects with a significantly smaller download size (less than 1 megabyte>). It does not include any character models from ReadyPlayerMe or Inworld avatars, which is suitable for developers with capabilities to import their own character skeletons and animations in Unity. Ideal for WebGL deployments or projects where package size is a consideration.
⚠️ Note: inworld-unity is provided as a Package, catering to core functionalities, whereas InworldAI.Full, offered as a Unitypackage, encompasses the entire suite of features and assets, and includes a reference to inworld-unity for foundational capabilities.
Platform
Detailed compatibility for each platform is listed below:
Platform | Inworld.AI (Websocket) | InworldAI.NDK | Inworld v1 | Inworld v2 |
---|---|---|---|---|
Windows Minimum Version | 2020.3.48f1 | 2020.3.48f1 | 2019.4 | 2021.3 |
Mac Intel 64-bit | 2022.3.10f1 | 2022.3.10f1 | 2022.3.10f1 | 2022.3.10f1 |
Mac Apple Silicon | 2022.3.10f1 | 2022.3.10f1 | 2022.3.10f1 | 2022.3.10f1 |
Android | ✔️ | only ARM64-v8a | ✔️ | ✔️ |
Oculus | ✔️ | only ARM64-v8a | ✔️ | ✔️ |
iOS | ✔️ | ✔️ | ✔️ | ✔️ |
Linux | ✔️ | ❌ | ❌ | ❌ |
WebGL | ✔️ | ❌ | ❌ | ❌ |
Rendering Pipeline
While the default Inworld avatar in the demo works with the Built-in pipeline, all our characters (Ready Player Me or Innequin) created through https://studio.inworld.ai/ are compatible with all rendering pipelines. If you wish to upgrade your models to use the Scriptable Render Pipeline, simply right-click on your character and select Inworld > Upgrade Materials for Scriptable Render Pipeline."
Input System
Our Inworld Player Controller
is currently not compatible with Unity's Input System
by default. Support for this is planned for the future.
Android
Unity cannot proceed Android build by 2021.3.6f1
is a known bug for Unity. To resolve this, copy the whole Tools folder from the previous Unity version. Check this page for more details.
Oculus
Network permission
Our SDK requires an internet connection to function properly. If you are developing for XR, please ensure that you set the Internet Access
option to Require
in the Player Settings
.
Mac/iOS
Microphone Usage Description
If you want to build an iOS app, please fill in Microphone Usage Description
under Project Settings > Player > iOS > Other Settings > Configuration
.
Also, for the default iOS app, the sound only comes out of the earpiece and may be relatively quiet. To output sound from the loudspeaker, you need to set Force IOS Speakers When Recording
as well.