mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-03-26 22:49:01 +08:00
fixed a regression when using Front Facing or Immutable Triangles
This commit is contained in:
parent
be7480bca4
commit
f42d76a59b
@ -517,8 +517,13 @@ public class SkeletonRenderer : MonoBehaviour {
|
|||||||
addSubmeshArgumentsCurrentMesh.Count = addSubmeshArgumentsTemp.Count;
|
addSubmeshArgumentsCurrentMesh.Count = addSubmeshArgumentsTemp.Count;
|
||||||
addSubmeshArgumentsTemp.CopyTo(addSubmeshArgumentsCurrentMesh.Items);
|
addSubmeshArgumentsTemp.CopyTo(addSubmeshArgumentsCurrentMesh.Items);
|
||||||
|
|
||||||
lastState.frontFacing = frontFacing;
|
if (useMesh1) {
|
||||||
lastState.immutableTriangles = immutableTriangles;
|
lastState.frontFacingMesh1 = frontFacing;
|
||||||
|
lastState.immutableTrianglesMesh1 = immutableTriangles;
|
||||||
|
} else {
|
||||||
|
lastState.frontFacingMesh2 = frontFacing;
|
||||||
|
lastState.immutableTrianglesMesh2 = immutableTriangles;
|
||||||
|
}
|
||||||
|
|
||||||
useMesh1 = !useMesh1;
|
useMesh1 = !useMesh1;
|
||||||
}
|
}
|
||||||
@ -526,8 +531,8 @@ public class SkeletonRenderer : MonoBehaviour {
|
|||||||
private bool MustUpdateMeshStructure(ExposedList<int> attachmentsTriangleCountTemp, ExposedList<LastState.AddSubmeshArguments> addSubmeshArgumentsTemp) {
|
private bool MustUpdateMeshStructure(ExposedList<int> attachmentsTriangleCountTemp, ExposedList<LastState.AddSubmeshArguments> addSubmeshArgumentsTemp) {
|
||||||
// Check if any mesh settings were changed
|
// Check if any mesh settings were changed
|
||||||
bool mustUpdateMeshStructure =
|
bool mustUpdateMeshStructure =
|
||||||
frontFacing != lastState.frontFacing ||
|
frontFacing != (useMesh1 ? lastState.frontFacingMesh1 : lastState.frontFacingMesh2) ||
|
||||||
immutableTriangles != lastState.immutableTriangles;
|
immutableTriangles != (useMesh1 ? lastState.immutableTrianglesMesh1 : lastState.immutableTrianglesMesh2);
|
||||||
#if UNITY_EDITOR
|
#if UNITY_EDITOR
|
||||||
mustUpdateMeshStructure |= !Application.isPlaying;
|
mustUpdateMeshStructure |= !Application.isPlaying;
|
||||||
#endif
|
#endif
|
||||||
@ -703,8 +708,10 @@ public class SkeletonRenderer : MonoBehaviour {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
private class LastState {
|
private class LastState {
|
||||||
public bool frontFacing;
|
public bool frontFacingMesh1;
|
||||||
public bool immutableTriangles;
|
public bool frontFacingMesh2;
|
||||||
|
public bool immutableTrianglesMesh1;
|
||||||
|
public bool immutableTrianglesMesh2;
|
||||||
public int vertexCount;
|
public int vertexCount;
|
||||||
public readonly ExposedList<int> attachmentsTriangleCountTemp = new ExposedList<int>();
|
public readonly ExposedList<int> attachmentsTriangleCountTemp = new ExposedList<int>();
|
||||||
public readonly ExposedList<int> attachmentsTriangleCountMesh1 = new ExposedList<int>();
|
public readonly ExposedList<int> attachmentsTriangleCountMesh1 = new ExposedList<int>();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user