Skip to content

Commit

Permalink
Merge branch 'release/v7.0.0' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
HarrisonHough committed Jul 1, 2024
2 parents d73bd3e + c10e79a commit f811caf
Show file tree
Hide file tree
Showing 9 changed files with 322 additions and 2,609 deletions.
22 changes: 11 additions & 11 deletions .github/latest.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@

## Changelog

### Updated
## Updated

- XR animation avatars now have DOF enabled by default [#288](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/288)
- Updated InCreatorAvatarLoader to use avatar config [#286](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/286)
- Avatar Creator Icon categories updated [#272](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/272)
- loading circle animation now using MMecanim animation [#302](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/302)
- removed unnecessary assets from Resources folder [#303](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/303)
- updated Template avatar assets [#300](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/300)
- Avatar Body type now moved to CoreSettings [#290](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/290)

### Fixed
### Added

- Fixed an issue preventing LOD's from updating [#277](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/277)
- An issue causing multiple signup requests [#275](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/275)
- Added support for hero customization assets (costumes) [#301](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/301)
- templates can now be filtered by Bodytype [#296](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/296)

### Added
- Avatar template type filter [#270](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/270)
- Handle failed body shape requests [#281](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/281)
- Option to filter Templates by gender [#273](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/273)
### Fixed

- fixed an issue causing invalid load settings in Avatar Loader window [#298](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/298)
24 changes: 24 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,30 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## [7.0.0] - 2024.07.01

## Updated

- loading circle animation now using MMecanim animation [#302](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/302)
- removed unnecessary assets from Resources folder [#303](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/303)
- updated Template avatar assets [#300](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/300)
- Avatar Body type now moved to CoreSettings [#290](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/290)

### Added

- Added support for hero customization assets (costumes) [#301](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/301)
- templates can now be filtered by Bodytype [#296](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/296)

### Fixed

- fixed an issue causing invalid load settings in Avatar Loader window [#298](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/298)

## [6.3.1] - 2024.06.18

### Fixed

- allow cache to be loaded from previous versions, where bodyType was stored as an integer [#293](https://github.com/readyplayerme/rpm-unity-sdk-core/pull/293)

## [6.3.0] - 2024.06.11

### Updated
Expand Down
73 changes: 40 additions & 33 deletions Editor/Core/Scripts/UI/CustomEditors/AvatarConfigEditor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -127,62 +127,69 @@ private void SetupCompressionPackages()
{
var useDracoCompression = root.Q<Toggle>("UseDracoCompression");
var useMeshOptCompression = root.Q<Toggle>("UseMeshOptCompression");

var optimizationPackages = root.Q<Foldout>("OptimizationPackages");
optimizationPackages.RegisterValueChangedCallback(x =>
{
useDracoCompression.SetValueWithoutNotify(ModuleInstaller.IsModuleInstalled(ModuleList.DracoCompression.name));
useMeshOptCompression.SetValueWithoutNotify(PackageManagerHelper.IsPackageInstalled(MESH_OPT_PACKAGE_NAME));
useDracoCompression.SetValueWithoutNotify(avatarConfigTarget.UseDracoCompression);
useMeshOptCompression.SetValueWithoutNotify(avatarConfigTarget.UseMeshOptCompression);
});

useDracoCompression.RegisterValueChangedCallback(x =>
{
if (avatarConfigTarget.UseDracoCompression == x.newValue) return;
avatarConfigTarget.UseDracoCompression = x.newValue;
if (ModuleInstaller.IsModuleInstalled(ModuleList.DracoCompression.name))
if (!ModuleInstaller.IsModuleInstalled(ModuleList.DracoCompression.name))
{
return;
if (EditorUtility.DisplayDialog(
DIALOG_TITLE,
string.Format(DIALOG_MESSAGE, "Draco compression", ModuleList.DracoCompression.name),
DIALOG_OK,
DIALOG_CANCEL))
{
ModuleInstaller.AddModuleRequest(ModuleList.DracoCompression.Identifier);
}
else
{
avatarConfigTarget.UseDracoCompression = false;
}
}

if (EditorUtility.DisplayDialog(
DIALOG_TITLE,
string.Format(DIALOG_MESSAGE, "Draco compression", ModuleList.DracoCompression.name),
DIALOG_OK,
DIALOG_CANCEL))
{
ModuleInstaller.AddModuleRequest(ModuleList.DracoCompression.Identifier);
}
else
useDracoCompression.SetValueWithoutNotify(avatarConfigTarget.UseDracoCompression);
if (avatarConfigTarget.UseDracoCompression && avatarConfigTarget.UseMeshOptCompression)
{
avatarConfigTarget.UseDracoCompression = false;
useDracoCompression.SetValueWithoutNotify(false);
Debug.LogWarning("Draco compression is not compatible with Mesh Optimization compression. Mesh Optimization compression will be disabled.");
avatarConfigTarget.UseMeshOptCompression = false;
useMeshOptCompression.SetValueWithoutNotify(false);
}

Save();
}
);

useMeshOptCompression.RegisterValueChangedCallback(x =>
{
if (avatarConfigTarget.UseMeshOptCompression == x.newValue) return;
avatarConfigTarget.UseMeshOptCompression = x.newValue;
if (PackageManagerHelper.IsPackageInstalled(MESH_OPT_PACKAGE_NAME))
if (!PackageManagerHelper.IsPackageInstalled(MESH_OPT_PACKAGE_NAME))
{
return;
if (EditorUtility.DisplayDialog(
DIALOG_TITLE,
string.Format(DIALOG_MESSAGE, "Mesh opt compression", MESH_OPT_PACKAGE_NAME),
DIALOG_OK,
DIALOG_CANCEL))
{
PackageManagerHelper.AddPackage(MESH_OPT_PACKAGE_NAME);
}
else
{
avatarConfigTarget.UseMeshOptCompression = false;
}
}

if (EditorUtility.DisplayDialog(
DIALOG_TITLE,
string.Format(DIALOG_MESSAGE, "Mesh opt compression", MESH_OPT_PACKAGE_NAME),
DIALOG_OK,
DIALOG_CANCEL))
useMeshOptCompression.SetValueWithoutNotify(avatarConfigTarget.UseMeshOptCompression);
if (avatarConfigTarget.UseMeshOptCompression && avatarConfigTarget.UseDracoCompression)
{
PackageManagerHelper.AddPackage(MESH_OPT_PACKAGE_NAME);
}
else
{
avatarConfigTarget.UseMeshOptCompression = false;
useMeshOptCompression.SetValueWithoutNotify(false);
Debug.LogWarning("Mesh Optimization compression is not compatible with Draco compression. Draco compression will be disabled.");
avatarConfigTarget.UseDracoCompression = false;
useDracoCompression.SetValueWithoutNotify(false);
}

Save();
}
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@
using Newtonsoft.Json.Linq;
using ReadyPlayerMe.AvatarCreator.Responses;
using ReadyPlayerMe.Core;
using UnityEditor.PackageManager.Requests;
using UnityEngine;

namespace ReadyPlayerMe.AvatarCreator
{
Expand Down
2 changes: 1 addition & 1 deletion Runtime/Core/Scripts/Data/ApplicationData.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ namespace ReadyPlayerMe.Core
{
public static class ApplicationData
{
public const string SDK_VERSION = "v6.3.0";
public const string SDK_VERSION = "v7.0.0";
private const string TAG = "ApplicationData";
private const string DEFAULT_RENDER_PIPELINE = "Built-In Render Pipeline";
private static readonly AppData Data;
Expand Down
8 changes: 7 additions & 1 deletion Runtime/Core/Scripts/JsonConverters/BodyTypeConverter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,13 @@ public override BodyType ReadJson(JsonReader reader, Type objectType, BodyType e
return EnumExtensions.GetValueFromDescription<BodyType>(token.ToString());
}

throw new JsonSerializationException("Expected string value, instead found: " + token.Type);
// This is a fallback to the previous SDK versions, where the bodyType was stored as an Integer.
if (token.Type == JTokenType.Integer)
{
return (BodyType) token.Value<int>();
}

throw new JsonSerializationException("Expected string or integer value, instead found: " + token.Type);
}
}
}
Loading

0 comments on commit f811caf

Please sign in to comment.