Explorar el Código

[ts] Closes #1401, JIT bug in Safari on iOS 9.

badlogic hace 6 años
padre
commit
ec903efb2e

+ 3 - 1
spine-ts/build/spine-all.js

@@ -1442,8 +1442,10 @@ var spine;
 				var timelineCount = current.animation.timelines.length;
 				var timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == spine.MixBlend.add) {
-					for (var ii = 0; ii < timelineCount; ii++)
+					for (var ii = 0; ii < timelineCount; ii++) {
+						spine.Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, spine.MixDirection.mixIn);
+					}
 				}
 				else {
 					var timelineMode = current.timelineMode;

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
spine-ts/build/spine-all.js.map


+ 3 - 1
spine-ts/build/spine-canvas.js

@@ -1442,8 +1442,10 @@ var spine;
 				var timelineCount = current.animation.timelines.length;
 				var timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == spine.MixBlend.add) {
-					for (var ii = 0; ii < timelineCount; ii++)
+					for (var ii = 0; ii < timelineCount; ii++) {
+						spine.Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, spine.MixDirection.mixIn);
+					}
 				}
 				else {
 					var timelineMode = current.timelineMode;

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
spine-ts/build/spine-canvas.js.map


+ 3 - 1
spine-ts/build/spine-core.js

@@ -1442,8 +1442,10 @@ var spine;
 				var timelineCount = current.animation.timelines.length;
 				var timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == spine.MixBlend.add) {
-					for (var ii = 0; ii < timelineCount; ii++)
+					for (var ii = 0; ii < timelineCount; ii++) {
+						spine.Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, spine.MixDirection.mixIn);
+					}
 				}
 				else {
 					var timelineMode = current.timelineMode;

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
spine-ts/build/spine-core.js.map


+ 3 - 1
spine-ts/build/spine-player.js

@@ -1442,8 +1442,10 @@ var spine;
 				var timelineCount = current.animation.timelines.length;
 				var timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == spine.MixBlend.add) {
-					for (var ii = 0; ii < timelineCount; ii++)
+					for (var ii = 0; ii < timelineCount; ii++) {
+						spine.Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, spine.MixDirection.mixIn);
+					}
 				}
 				else {
 					var timelineMode = current.timelineMode;

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
spine-ts/build/spine-player.js.map


+ 3 - 1
spine-ts/build/spine-threejs.js

@@ -1442,8 +1442,10 @@ var spine;
 				var timelineCount = current.animation.timelines.length;
 				var timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == spine.MixBlend.add) {
-					for (var ii = 0; ii < timelineCount; ii++)
+					for (var ii = 0; ii < timelineCount; ii++) {
+						spine.Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, spine.MixDirection.mixIn);
+					}
 				}
 				else {
 					var timelineMode = current.timelineMode;

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
spine-ts/build/spine-threejs.js.map


+ 3 - 1
spine-ts/build/spine-webgl.js

@@ -1442,8 +1442,10 @@ var spine;
 				var timelineCount = current.animation.timelines.length;
 				var timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == spine.MixBlend.add) {
-					for (var ii = 0; ii < timelineCount; ii++)
+					for (var ii = 0; ii < timelineCount; ii++) {
+						spine.Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, spine.MixDirection.mixIn);
+					}
 				}
 				else {
 					var timelineMode = current.timelineMode;

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
spine-ts/build/spine-webgl.js.map


+ 6 - 1
spine-ts/core/src/AnimationState.ts

@@ -160,8 +160,13 @@ module spine {
 				let timelineCount = current.animation.timelines.length;
 				let timelines = current.animation.timelines;
 				if ((i == 0 && mix == 1) || blend == MixBlend.add) {
-					for (let ii = 0; ii < timelineCount; ii++)
+					for (let ii = 0; ii < timelineCount; ii++) {
+						// Fixes issue #302 on IOS9 where mix, blend sometimes became undefined and caused assets
+                        // to sometimes stop rendering when using color correction, as their RGBA values become NaN.
+                        // (https://github.com/pixijs/pixi-spine/issues/302)
+                        Utils.webkit602BugfixHelper(mix, blend);
 						timelines[ii].apply(skeleton, animationLast, animationTime, events, mix, blend, MixDirection.mixIn);
+					}
 				} else {
 					let timelineMode = current.timelineMode;
 

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio