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