mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-08-26 12:55:18 -05:00
EnumUtil to CacheEnum
This commit is contained in:
@@ -79,17 +79,29 @@ namespace VRM
|
||||
/// </summary>
|
||||
public void CreateDefaultPreset()
|
||||
{
|
||||
foreach (var preset in ((BlendShapePreset[])Enum.GetValues(typeof(BlendShapePreset)))
|
||||
.Where(x => x != BlendShapePreset.Unknown))
|
||||
var presets = CacheEnum.GetValues<BlendShapePreset>();
|
||||
|
||||
foreach (var preset in presets)
|
||||
{
|
||||
if (preset == BlendShapePreset.Unknown) continue;
|
||||
CreateDefaultPreset(preset);
|
||||
}
|
||||
}
|
||||
|
||||
void CreateDefaultPreset(BlendShapePreset preset)
|
||||
{
|
||||
var clip = GetClip(preset);
|
||||
BlendShapeClip clip = null;
|
||||
|
||||
foreach (var c in Clips)
|
||||
{
|
||||
if (c.Preset == preset)
|
||||
{
|
||||
clip = c;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (clip != null) return;
|
||||
|
||||
clip = ScriptableObject.CreateInstance<BlendShapeClip>();
|
||||
clip.name = preset.ToString();
|
||||
clip.BlendShapeName = preset.ToString();
|
||||
|
||||
@@ -128,7 +128,7 @@ namespace VRM
|
||||
{
|
||||
if (x.mesh == index)
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<FirstPersonFlag>(x.firstPersonFlag);
|
||||
return CacheEnum.TryParseOrDefault<FirstPersonFlag>(x.firstPersonFlag, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -158,12 +158,12 @@ namespace VRM
|
||||
if (group != null)
|
||||
{
|
||||
asset.BlendShapeName = groupName;
|
||||
asset.Preset = EnumUtil.TryParseOrDefault<BlendShapePreset>(group.presetName);
|
||||
asset.Preset = CacheEnum.TryParseOrDefault<BlendShapePreset>(group.presetName, true);
|
||||
asset.IsBinary = group.isBinary;
|
||||
if (asset.Preset == BlendShapePreset.Unknown)
|
||||
{
|
||||
// fallback
|
||||
asset.Preset = EnumUtil.TryParseOrDefault<BlendShapePreset>(group.name);
|
||||
asset.Preset = CacheEnum.TryParseOrDefault<BlendShapePreset>(group.name, true);
|
||||
}
|
||||
asset.Values = group.binds.Select(x =>
|
||||
{
|
||||
|
||||
@@ -87,7 +87,7 @@ namespace VRM
|
||||
{
|
||||
get
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<LookAtType>(lookAtTypeName);
|
||||
return CacheEnum.TryParseOrDefault<LookAtType>(lookAtTypeName, true);
|
||||
}
|
||||
set { lookAtTypeName = value.ToString(); }
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ namespace VRM
|
||||
{
|
||||
public static VRMBone FromHumanBodyBone(this HumanBodyBones human)
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<VRMBone>(human.ToString(), VRMBone.unknown);
|
||||
return human.ToVrmBone();
|
||||
}
|
||||
|
||||
public static HumanBodyBones ToHumanBodyBone(this VRMBone bone)
|
||||
@@ -85,7 +85,7 @@ namespace VRM
|
||||
return HumanBodyBones.LastBone;
|
||||
}
|
||||
#endif
|
||||
return EnumUtil.TryParseOrDefault<HumanBodyBones>(bone.ToString(), HumanBodyBones.LastBone);
|
||||
return bone.ToUnityBone();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -161,7 +161,7 @@ namespace VRM
|
||||
}
|
||||
get
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<VRMBone>(bone);
|
||||
return CacheEnum.Parse<VRMBone>(bone, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace VRM
|
||||
{
|
||||
static UssageLicense FromString(string src)
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<UssageLicense>(src);
|
||||
return CacheEnum.TryParseOrDefault<UssageLicense>(src, true);
|
||||
}
|
||||
|
||||
[JsonSchema(Description = "Title of VRM model")]
|
||||
@@ -69,7 +69,7 @@ namespace VRM
|
||||
{
|
||||
get
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<AllowedUser>(allowedUserName);
|
||||
return CacheEnum.TryParseOrDefault<AllowedUser>(allowedUserName, true);
|
||||
}
|
||||
set
|
||||
{
|
||||
@@ -135,7 +135,7 @@ namespace VRM
|
||||
{
|
||||
get
|
||||
{
|
||||
return EnumUtil.TryParseOrDefault<LicenseType>(licenseName);
|
||||
return CacheEnum.TryParseOrDefault<LicenseType>(licenseName, true);
|
||||
}
|
||||
set
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user