Skip to content

Commit

Permalink
Merge branch 'hotfix/v0.1.1'
Browse files Browse the repository at this point in the history
  • Loading branch information
HarrisonHough committed Aug 15, 2024
2 parents 16c219c + 35efd7a commit 42c0c61
Show file tree
Hide file tree
Showing 7 changed files with 36 additions and 26 deletions.
8 changes: 3 additions & 5 deletions .github/latest.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@

## Changelog

- ### Added
- ### Updates

- Initial release
- Loader samples with 2 avatar loading sample scenes
- Avatar loader and Movement avatar prefabs
- Editor and runtime scripts to help with avatar loading and meta movement component setup
- README updates
- fixed issue causing error with ARKitFace setup
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,13 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## [0.1.0] - 2024.08.15

- ### Updates

- README updates
- fixed issue causing error with ARKitFace setup

## [0.1.0] - 2024.08.06

### Added
Expand Down
1 change: 0 additions & 1 deletion Editor/AvatarBoneMirrorEditor.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using ReadyPlayerMe.MetaMovement;
using UnityEditor;
using UnityEngine;

Expand Down
7 changes: 5 additions & 2 deletions Editor/MetaMovementSetupTool.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,11 @@ public static void MetaMovementSetup()
var restPoseObjectHumanoid = AddComponentsHelper.GetRestPoseObject(AddComponentsHelper.CheckIfTPose(animator));
AnimationUtilities.UpdateToAnimatorPose(animator);
HelperMenusBody.SetupCharacterForAnimationRiggingRetargetingConstraints(activeGameObject, restPoseObjectHumanoid, true, true);
MetaMovementHelper.SetLayerRecursively(activeGameObject, LayerMask.NameToLayer(META_CHARACTER_LAYER));
if(LayerMask.NameToLayer(META_CHARACTER_LAYER) >= 0)
{
MetaMovementHelper.SetLayerRecursively(activeGameObject, LayerMask.NameToLayer(META_CHARACTER_LAYER));
return;
}
SetupFaceTracking(activeGameObject);
MetaMovementHelper.SetupHierarchyTwist(activeGameObject);
var deformation = activeGameObject.GetComponentInChildren<FullBodyDeformationConstraint>();
Expand Down Expand Up @@ -74,7 +78,6 @@ private static void SetupFaceTracking(GameObject activeGameObject)
{
arkitFaceComponent = mesh.gameObject.AddComponent<ARKitFace>();
}
arkitFaceComponent.OnBeforeSerialize();
MetaMovementHelper.ApplyARKitFaceSettings(arkitFaceComponent);
EditorUtility.SetDirty(arkitFaceComponent);
}
Expand Down
32 changes: 17 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,25 +24,26 @@ Please visit the online documentation and join our public `forums` community.
https://github.com/readyplayerme/rpm-unity-meta-movement-support.git
```
- Open Unity and go to `Window -> Package Manager -> Add package from git URL`
![Screenshot 2024-07-22 081415](~Images/image-package-manager-0.png)

![image-package-manager-0](https://github.com/user-attachments/assets/46ff8c13-a203-419d-bb7e-55593caeb9d2)

- Paste the URL and click `Add`

![Screenshot 2024-07-22 081437](~Images/image-package-manager-1.png)

![image-package-manager-1](https://github.com/user-attachments/assets/b283657d-99a1-4ce8-b5a5-df35ea0edf9b)


## Importing the Sample
1. Import the sample by going to `Window -> Package Manager -> Ready Player Me Meta Movement Support -> Samples -> Import`
![Screenshot 2024-07-22 082241](~Images/image-package-manager.png)

![image-package-manager](https://github.com/user-attachments/assets/6fa27edc-b071-46be-b12c-07f4c4ca86bc)

### Running the Samples in the Editor
1. Open the scene `Assets/Samples/Ready Player Me Meta Movement Support/VERSION_NUMBER/LoaderSamples/Scenes/DynamicLoader` or `Assets/Samples/Ready Player Me Meta Movement Support/VERSION_NUMBER/LoaderSamples/Scenes/PrefabLoader`
2. Connect your Quest device via Quest Link
3. Click on the `Play` button in the Unity Editor

![image](https://github.com/user-attachments/assets/47d4d0ba-d8f1-457b-bae3-34b738184f5d)

![Screenshot 2024-07-22 082310](~Images/image-scenes.png)

### Running the Samples on the device
1. Open the scene `Assets/Samples/Ready Player Me Meta Movement Support/VERSION_NUMBER/LoaderSamples/Scenes/DynamicLoader` or `Assets/Samples/Ready Player Me Meta Movement Support/VERSION_NUMBER/LoaderSamples/Scenes/PrefabLoader`
Expand All @@ -58,16 +59,17 @@ _This assumes that the scene is already set up with the necessary components for
1. With your scene open, drag and drop the `DynamicAvatarLoader` prefab from `Packages/Ready Player Me Meta Movement Support/Runtime/Prefabs` into your scene
3. Select the `DynamicAvatarLoader` object in the scene, then in the inspector, set the `Avatar URL` field in the `LoadUrlOnStart` component to the URL of the avatar you want to load

![Screenshot 2024-07-22 105848](~Images/image-inspector.png)
![image-inspector](https://github.com/user-attachments/assets/b81a6dd8-bfd3-41eb-ac5e-afbfe404e361)


4. Click on the `Play` button in the Unity Editor
5. After a small delay, your avatar will load into the scene
5. Click on the `Play` button in the Unity Editor
6. After a small delay, your avatar will load into the scene

### Loading with AvatarPrefabLoader
1. With your scene open, Drag and drop the `AvatarPrefabLoader` prefab from `Packages/Ready Player Me Meta Movement Support/Runtime/Prefabs` into your scene
2. Select the `AvatarPrefabLoader` object in the scene, then in the inspector, set the `Avatar URL` field in the `LoadUrlOnStart` component to the URL of the avatar you want to load

![Screenshot 2024-07-22 105856](~Images/image-inspector-2.png)
![image-inspector-2](https://github.com/user-attachments/assets/75402fea-dbcf-42de-afe2-62c35a7dc4fe)

3. Click on the `Play` button in the Unity Editor
4. After a small delay, your avatar will load into the scene
Expand All @@ -78,11 +80,11 @@ Before loading an avatar you need to set the correct avatar config.
To do this follow these steps:
1. Open the Ready Player Me Settings window `Tools -> Ready Player Me -> Settings`

![Screenshot 2024-07-22 083005](~Images/image-toolbar.png)
![image-toolbar](https://github.com/user-attachments/assets/b660a227-6117-4ec7-b268-522ebf2fec0e)

2. Set the `Avatar Config` field to `Meta Avatar Config`

![Screenshot 2024-07-22 083024](~Images/image-settings.png)
![image-settings](https://github.com/user-attachments/assets/a6696b77-33fd-4c34-857e-e3cd457e56ea)

3. This will ensure that the avatar is created with the correct settings for Meta Movement and face-tracking

Expand All @@ -91,7 +93,7 @@ To do this follow these steps:
2. After avatar creation is complete you will get a URL to a .glb, copy that URL.
3. In Unity open the Avatar loader window by going to `Tools -> Ready Player Me -> Avatar Loader`

![Screenshot 2024-07-22 083154](~Images/image-loader.png)
![image-loader](https://github.com/user-attachments/assets/f792901e-0ce3-4722-bbc1-a2d9e1150d16)

4. Paste the URL into the `Avatar URL` field and click `Load Avatar`
5. After a small delay, the avatar should load into the scene as a new GameObject
Expand All @@ -100,7 +102,7 @@ To do this follow these steps:
1. Select the avatar GameObject and right-click to display the context menu
2. In the context menu, select `Ready Player Me -> Meta Movement -> Run Avatar Setup`

![Screenshot 2024-07-22 083334](~Images/image-inspector-2.png)
![image-inspector-2](https://github.com/user-attachments/assets/c8934d0a-5784-456a-8bb3-e147345bdec7)

3. This should automatically set up the avatar with the correct settings and components including:
- Adding a Retargeting Layer component
Expand Down
2 changes: 1 addition & 1 deletion Runtime/Scripts/MetaMovementHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ public static void ApplyARKitFaceSettings(ARKitFace arKitFace)
Debug.LogError("ARKitFace component is null.");
return;
}

arKitFace.RetargetingTypeField = OVRCustomFace.RetargetingType.Custom;
arKitFace.AutoMapBlendshapes();
arKitFace.BlendShapeStrengthMultiplier = 1f;

Expand Down
5 changes: 3 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "com.readyplayerme.metamovement",
"version": "0.1.0",
"version": "0.1.1",
"displayName": "Ready Player Me Meta Movement Support",
"description": "This package provides support for Ready Player Me avatars that use Meta Movement SDK.",
"unity": "2021.3",
Expand All @@ -13,7 +13,8 @@
"keywords": [
"meta",
"avatar",
"vr"
"vr",
"xr"
],
"author": {
"name": "Ready Player Me",
Expand Down

0 comments on commit 42c0c61

Please sign in to comment.