42 lines
1.4 KiB
C#
42 lines
1.4 KiB
C#
#if UNITY_EDITOR
|
|
using UnityEditor;
|
|
using UnityEngine;
|
|
|
|
public static class CheckPetFacing
|
|
{
|
|
public static string Run()
|
|
{
|
|
var paths = new[]
|
|
{
|
|
"Assets/Bundles/Characters/Animal/FireCat/FireCat_Companion.prefab",
|
|
"Assets/Bundles/Characters/Animal/RockBallStudio/RockBallStudio_Companion.prefab",
|
|
"Assets/Bundles/Characters/Animal/BudBud/BudBud_Companion.prefab"
|
|
};
|
|
var sb = new System.Text.StringBuilder();
|
|
foreach (var path in paths)
|
|
{
|
|
var go = AssetDatabase.LoadAssetAtPath<GameObject>(path);
|
|
if (go == null) continue;
|
|
var smr = go.GetComponentInChildren<SkinnedMeshRenderer>();
|
|
var anim = go.GetComponentInChildren<Animator>();
|
|
sb.AppendLine($"=== {go.name} ===");
|
|
if (smr != null)
|
|
{
|
|
var bounds = smr.localBounds;
|
|
sb.AppendLine($" SMR: {smr.name}, localBounds center={bounds.center}, size={bounds.size}");
|
|
if (smr.rootBone != null)
|
|
{
|
|
sb.AppendLine($" RootBone: {smr.rootBone.name}, localRot={smr.rootBone.localEulerAngles}, forward={smr.rootBone.forward}");
|
|
}
|
|
}
|
|
if (anim != null)
|
|
{
|
|
sb.AppendLine($" Animator on: {anim.gameObject.name}, rot={anim.transform.localEulerAngles}");
|
|
}
|
|
}
|
|
return sb.ToString();
|
|
}
|
|
}
|
|
#endif
|
|
|