Optimize GC for mesh wrapper.
This commit is contained in:
@@ -106,6 +106,7 @@ namespace Cryville.Crtr.Components {
|
||||
public override void Init() {
|
||||
base.Init();
|
||||
mesh.Init(transform);
|
||||
mesh.Mesh = new Mesh();
|
||||
|
||||
mesh.Renderer.sharedMaterials = materials = new Material[] {
|
||||
MeshWrapper.NewMaterial(),
|
||||
|
@@ -89,7 +89,7 @@ namespace Cryville.Crtr.Components {
|
||||
protected void InternalInit(string meshName = "quad") {
|
||||
mesh.Init(transform);
|
||||
mesh.Renderer.sharedMaterials = materials = new Material[] { MeshWrapper.NewMaterial() };
|
||||
mesh.Mesh = GenericResources.Meshes[meshName];
|
||||
mesh.Mesh = Mesh.Instantiate(GenericResources.Meshes[meshName]);
|
||||
UpdateColor();
|
||||
UpdateScale();
|
||||
UpdateZIndex();
|
||||
|
@@ -10,9 +10,10 @@ namespace Cryville.Crtr {
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
Mesh m_mesh;
|
||||
public Mesh Mesh {
|
||||
get { return MeshFilter.mesh; }
|
||||
set { MeshFilter.mesh = value; }
|
||||
get { return m_mesh; }
|
||||
set { MeshFilter.sharedMesh = m_mesh = value; }
|
||||
}
|
||||
public Transform MeshTransform {
|
||||
get;
|
||||
@@ -42,7 +43,8 @@ namespace Cryville.Crtr {
|
||||
Initialized = true;
|
||||
}
|
||||
public void Destroy() {
|
||||
Mesh.Destroy(Mesh);
|
||||
Mesh.Destroy(m_mesh);
|
||||
m_mesh = null;
|
||||
GameObject.Destroy(MeshObject);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user