Skip to main content

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:

PlatformInworld.AI (Websocket)InworldAI.NDKInworld v1Inworld v2
Windows Minimum Version2020.3.48f12020.3.48f12019.42021.3
Mac Intel 64-bit2022.3.10f12022.3.10f12022.3.10f12022.3.10f1
Mac Apple Silicon2022.3.10f12022.3.10f12022.3.10f12022.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." upmat

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. xrnetwork

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.

iOSSpeaker