aboutsummaryrefslogtreecommitdiff
path: root/Packages/dev.zue.vrcog/Editor
diff options
context:
space:
mode:
Diffstat (limited to 'Packages/dev.zue.vrcog/Editor')
-rw-r--r--Packages/dev.zue.vrcog/Editor/VRCog/FileStatTree.cs20
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)