Added Unity project files
This commit is contained in:
@ -0,0 +1,39 @@
|
||||
using System.Reflection;
|
||||
using UnityEditor;
|
||||
using UnityEngine.Assertions;
|
||||
|
||||
namespace VRWorldToolkit.Editor
|
||||
{
|
||||
/// <summary>
|
||||
/// Utility for setting and getting internal model importer values
|
||||
/// </summary>
|
||||
public static class ModelImporterUtil
|
||||
{
|
||||
private static readonly System.Type systemType;
|
||||
private static PropertyInfo mProperty_LegacyBlendShapeNormals;
|
||||
|
||||
static ModelImporterUtil()
|
||||
{
|
||||
systemType = Assembly.Load("UnityEditor.dll").GetType("UnityEditor.ModelImporter");
|
||||
Assert.IsNotNull(systemType);
|
||||
}
|
||||
|
||||
public static bool GetLegacyBlendShapeNormals(ModelImporter importer)
|
||||
{
|
||||
if (mProperty_LegacyBlendShapeNormals == null)
|
||||
mProperty_LegacyBlendShapeNormals = systemType.GetProperty("legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes", BindingFlags.NonPublic | BindingFlags.Instance);
|
||||
|
||||
Assert.IsNotNull(mProperty_LegacyBlendShapeNormals);
|
||||
return (bool)mProperty_LegacyBlendShapeNormals.GetValue(importer);
|
||||
}
|
||||
|
||||
public static void SetLegacyBlendShapeNormals(ModelImporter importer, bool value)
|
||||
{
|
||||
if (mProperty_LegacyBlendShapeNormals == null)
|
||||
mProperty_LegacyBlendShapeNormals = systemType.GetProperty("legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes", BindingFlags.NonPublic | BindingFlags.Instance);
|
||||
|
||||
Assert.IsNotNull(mProperty_LegacyBlendShapeNormals);
|
||||
mProperty_LegacyBlendShapeNormals.SetValue(importer, value, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user