LogoLogo
WebsiteBlogForumsSign up
  • Welcome
  • How Ready Player Me works
  • FAQ
  • 👩‍💻Integration Guides
    • Overview
    • Unity
      • Quickstart
      • Avatar Creator Integration
        • WebView Avatar Creator
          • Avatar Creator for Android & iOS
          • Avatar Creator for WebGL
        • Build your own Avatar Creator
          • Start with the sample
          • Elements
            • Asset Selection Element
            • Color Selection Element
            • Template Selection Element
            • Body Shapes Selection Element
            • Gender Selection Element
            • Avatar List Element
            • Photo Capture Element
            • Signup Element
            • Login Element
            • Logout Element
          • User Management
      • Load 2D Renders
      • Avatar Loader Window
      • Setup Multiplayer
      • Setup for XR (Beta)
        • Setup the Player Avatar
        • Setup Meta Movement SDK
        • Setup Final IK
        • Setup XR Hands
          • RpmHandDriver script
        • Facial Animations
        • VR Avatar Creator
      • Animations
        • Ready Player Me Animation Library
        • Mixamo Animations
      • Optimize
        • Avatar Configuration
        • Avatar Caching
        • Defer Agents
      • Code Samples
        • Loading 3D Avatars
        • Loading 2D Avatars
        • Avatar Creator (WebGL)
        • Avatar Creator (Desktop)
        • Avatar Creator (Mobile)
        • Distance-based LODs
      • Troubleshooting
        • Editor UI Window Issues
        • Avatar loading issues
        • iOS issues
        • WebGL issues
        • Firewall issues
        • Updating the SDK
          • Unity SDK 3.0.0 Migration guide
          • Unity SDK 4.0.0 Migration guide
          • Unity SDK 5.0.0
          • Unity SDK 7.0.0
          • WebView 2.0 Migration
        • Package installation issues
      • Help us improve the Unity SDK
      • FAQ for Unity
      • Early Access Features
    • Unreal Engine
      • Quickstart
        • Import SDK Manually
      • Avatar Creator Integration
        • Build your own Avatar Creator
          • Sample Structure
          • Customization Guide
        • WebView Avatar Creator
      • Load Avatars
      • Animations
        • Ready Player Me Animation Library
        • Loading Mixamo animations
        • Mannequin animation retargeting
        • Blender FBX export to UE
        • Oculus Lipsync integration
      • Optimize
        • Avatar configuration
        • Avatar caching
        • Avatar preloading
      • Code Samples
        • Unreal Engine 5 samples
        • Lyra project integration example
        • VR Avatars
        • Unreal Engine 4
      • Troubleshooting
        • Project compilation issues
        • Missing materials on built applications
        • Avatar loading issues
        • Animation issues
        • Unreal SDK breaking changes
        • Avatar lighting issues
        • Updating from earlier versions
          • Unreal SDK 3.0.0 Migration guide
        • Auto LOD issues
      • Help us improve the Unreal Engine SDK
      • FAQ for Unreal Engine
      • Early Access Features
    • React
      • Quickstart
    • React Native
    • iOS Native
    • Android Native
    • Web Integration
      • Quickstart
      • User Management
        • Guest Accounts
        • Account Linking
      • Avatar Creator integration
      • Optimize
    • API Integration
      • Quickstart
      • Custom Avatar Creator
      • User management
        • Ready Player Me Account
        • Anonymous Accounts
    • UX/UI Guidelines
      • Summary & quick tips
      • UX and UI guidelines and essentials
        • Foundation for good user experience
          • Layout
          • Colors
          • Typography
          • Icons
          • Dark mode and light mode
        • Mobile best practices
          • Layout
        • Making Ready Player Me feel native
          • Seamless Avatar Integration
          • Consistent Branding
          • Responsive Layout
          • Performance Optimization
        • Discoverability of the avatar editor
          • Onboarding tutorial
          • Clear navigation
          • Contextual Placement
  • 🖌️Customizing Guides
    • Studio (Developer Dashboard)
    • Avatar Creator Appearance
      • Avatar URLs
      • Avatar Shortcodes
    • Upload and Manage Custom Assets
      • Asset Manager in Studio
      • Configure in Studio
      • Manage custom assets using the API
      • Unlocking assets through API (Beta)
    • Create Custom Assets
      • Fullbody Outfits
        • Checking Skin Weights
      • Tops, Bottoms, Shoes
        • Editing templates
      • Hairstyle
      • Headwear
      • Facewear
      • Glasses
      • Hero Characters
      • Modeling Guidelines
  • 🔃API Reference
    • REST API
      • Authentication
      • Avatars
        • GET - 3D avatar
        • GET - 2D Render of an Avatar
        • GET - Metadata
        • PUT - Equip an asset
        • PUT - Unequip an asset
      • Assets
        • Asset Entity Properties
        • POST - Create Asset
        • GET - List Assets
        • PATCH - Update Asset
        • POST - Upload Asset Files
        • POST - Add Asset to Application
        • DELETE - Remove Asset from Application
        • PUT - Unlock asset for a user
        • PUT - Lock asset for a user
      • Users
        • POST - Create User
      • Auth
        • GET - Token
      • Changelog
    • Avatars
      • Full-body avatars
      • Full-body XR avatars
      • Half-body avatars
      • Morph targets
        • Apple ARKit
        • Oculus OVR LipSync
    • Avatar Creator
  • 🔉Support
    • Forums
    • Licensing & Privacy
Powered by GitBook
On this page
  • Update Guide
  • 1. Migrate avatar creator
  • 2. Update Avatar Auto-Replacement

Was this helpful?

  1. Integration Guides
  2. Unity
  3. Troubleshooting
  4. Updating the SDK

Unity SDK 4.0.0 Migration guide

PreviousUnity SDK 3.0.0 Migration guideNextUnity SDK 5.0.0

Last updated 11 months ago

Was this helpful?

For some time, we have been developing the Avatar Creator as a separate project due to its initial readiness level, which required its own versioning and release cycle. Now that the Avatar Creator has been launched, we are integrating it into the core. This consolidation will simplify its utilization for developers.

We also decided to remove the auto-replacement of the avatars in the scene, when the avatar with the same ID was already in the scene to give you more freedom in avatar management.

Update Guide

1. Migrate avatar creator

Follow these steps if you have been using Avatar Creator and its sample.

1. Backup

It is recommended that you back up your project before updating to the new Unity SDK if you are not using source control.

2. Remove avatar creator

Using the Unity package manager remove the avatar creator and delete the imported sample.

3. Update core to v4.0.0 or higher

To update the core, navigate to the Ready Player Menu and select the ‘Check for Updates’ option. A confirmation prompt will appear to verify the update.

4. Import AvatarCreatorSamples

Once the core has been imported, you can proceed to import the ‘AvatarCreatorSamples’ from the samples in package manager.

5. Run the AvatarCreatorSample scene

2. Update Avatar Auto-Replacement

In 4.0 the AvatarProcessor no longer automatically finds and removes avatars with a particular ID. This was done as both an optimization but also to make our system more flexible. Now developers can handle avatar loading and removal however they like.

If your project uses AvatarProcessor or AvatarObjectLoader classes in your implementation you will need to make sure, that the avatar is cleared after loading. In previous versions, the following code would automatically remove the previous avatar GameObject, if it existed in the scene:

private void LoadAvatar(string url)
{
    var loader = new AvatarObjectLoader();
    loader.LoadAvatar(url);
}

The simplest way to add this feature back is by adding a similar functionality to the AvatarObjectLoader.OnCompleted method. For example

private void LoadAvatar(string url)
{
    var loader = new AvatarObjectLoader();

    loader.OnCompleted += (sender, args) =>
    {
        var oldInstance = GameObject.Find(args.Avatar.name);
        if (oldInstance != null) DestroyImmediate(oldInstance);
    };
    loader.LoadAvatar(url);
}

This requires the configuration of the App ID in settings. You can obtain the App ID from your .

👩‍💻
studio account