[unity] Handle MeshRendererBuffers reinitialize.

This commit is contained in:
John 2018-06-07 20:07:27 +08:00 committed by GitHub
parent 395e71c098
commit 0d829a7ba2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1284,7 +1284,13 @@ namespace Spine.Unity {
internal Material[] sharedMaterials = new Material[0];
public void Initialize () {
doubleBufferedMesh = new DoubleBuffered<SmartMesh>();
if (doubleBufferedMesh != null) {
doubleBufferedMesh.GetNext().Clear();
doubleBufferedMesh.GetNext().Clear();
submeshMaterials.Clear();
} else {
doubleBufferedMesh = new DoubleBuffered<SmartMesh>();
}
}
public Material[] GetUpdatedSharedMaterialsArray () {
@ -1343,6 +1349,11 @@ namespace Spine.Unity {
public Mesh mesh = SpineMesh.NewSkeletonMesh();
public SkeletonRendererInstruction instructionUsed = new SkeletonRendererInstruction();
public void Clear () {
mesh.Clear();
instructionUsed.Clear();
}
public void Dispose () {
if (mesh != null) {
#if UNITY_EDITOR