[unity] Fixed SkeletonGraphic Mesh memory leak on Initialize(). Closes #1714.

This commit is contained in:
Harald Csaszar 2020-06-25 15:58:39 +02:00
parent 7ecc3b6f95
commit f946fd8b56

View File

@ -426,7 +426,7 @@ namespace Spine.Unity {
ScaleY = this.initialFlipY ? -1 : 1
};
meshBuffers = new DoubleBuffered<MeshRendererBuffers.SmartMesh>();
InitMeshBuffers();
baseTexture = skeletonDataAsset.atlasAssets[0].PrimaryMaterial.mainTexture;
canvasRenderer.SetTexture(this.mainTexture); // Needed for overwriting initializations.
@ -478,6 +478,16 @@ namespace Spine.Unity {
}
#endregion
protected void InitMeshBuffers () {
if (meshBuffers != null) {
meshBuffers.GetNext().Clear();
meshBuffers.GetNext().Clear();
}
else {
meshBuffers = new DoubleBuffered<MeshRendererBuffers.SmartMesh>();
}
}
protected void UpdateMeshSingleCanvasRenderer () {
if (canvasRenderers.Count > 0)
DisableUnusedCanvasRenderers(usedCount : 0);