diff options
| -rw-r--r-- | Packages/dev.zue.vrcog/Editor/VRCog/FileStatTree.cs | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/Packages/dev.zue.vrcog/Editor/VRCog/FileStatTree.cs b/Packages/dev.zue.vrcog/Editor/VRCog/FileStatTree.cs index 3e1fe81..f1c7ef9 100644 --- a/Packages/dev.zue.vrcog/Editor/VRCog/FileStatTree.cs +++ b/Packages/dev.zue.vrcog/Editor/VRCog/FileStatTree.cs @@ -78,8 +78,24 @@ public class FileStatTree : EditorWindow }
// Track Mesh
- MeshFilter mf = ren.GetComponent<MeshFilter>();
- if (mf != null && mf.sharedMesh != null) foundAssets.Add(mf.sharedMesh);
+ switch (ren)
+ {
+ case SkinnedMeshRenderer smr:
+ if (smr.sharedMesh != null) foundAssets.Add(smr.sharedMesh);
+ break;
+ case ParticleSystemRenderer psr when psr.renderMode == ParticleSystemRenderMode.Mesh:
+ Mesh[] particleMeshes = new Mesh[psr.meshCount];
+ psr.GetMeshes(particleMeshes);
+ foreach (Mesh m in particleMeshes)
+ {
+ if (m != null) foundAssets.Add(m);
+ }
+ break;
+ default:
+ MeshFilter mf = ren.GetComponent<MeshFilter>();
+ if (mf != null && mf.sharedMesh != null) foundAssets.Add(mf.sharedMesh);
+ break;
+ }
}
foreach (var asset in foundAssets)
|
