From c28bbebf804980f55cdd773fed9ff145e0e7e76c Mon Sep 17 00:00:00 2001 From: smaren Date: Wed, 4 Apr 2018 11:39:31 +0200 Subject: [PATCH] [TS] WebKit 602 disappearing graphics bug (#1093) * Added a fix for the iOS 10 issue described at http://esotericsoftware.com/forum/iOS-10-disappearing-graphics-10109 * Renamed uselessFunction and updated documentation --- spine-ts/core/src/AnimationState.ts | 7 ++++++- spine-ts/core/src/Utils.ts | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/spine-ts/core/src/AnimationState.ts b/spine-ts/core/src/AnimationState.ts index b9d6c5266b..8effa4fe41 100644 --- a/spine-ts/core/src/AnimationState.ts +++ b/spine-ts/core/src/AnimationState.ts @@ -172,8 +172,11 @@ module spine { let pose = timelineData[ii] >= AnimationState.FIRST ? MixPose.setup : currentPose; if (timeline instanceof RotateTimeline) { this.applyRotateTimeline(timeline, skeleton, animationTime, mix, pose, timelinesRotation, ii << 1, firstFrame); - } else + } else { + // This fixes the WebKit 602 specific issue described at http://esotericsoftware.com/forum/iOS-10-disappearing-graphics-10109 + Utils.webkit602BugfixHelper(mix, pose); timeline.apply(skeleton, animationLast, animationTime, events, mix, pose, MixDirection.in); + } } } this.queueEvents(current, animationTime); @@ -242,6 +245,8 @@ module spine { if (timeline instanceof RotateTimeline) this.applyRotateTimeline(timeline, skeleton, animationTime, alpha, pose, timelinesRotation, i << 1, firstFrame); else { + // This fixes the WebKit 602 specific issue described at http://esotericsoftware.com/forum/iOS-10-disappearing-graphics-10109 + Utils.webkit602BugfixHelper(alpha, pose); timeline.apply(skeleton, animationLast, animationTime, events, alpha, pose, MixDirection.out); } } diff --git a/spine-ts/core/src/Utils.ts b/spine-ts/core/src/Utils.ts index 2cdf5ccf47..fbd87161b4 100644 --- a/spine-ts/core/src/Utils.ts +++ b/spine-ts/core/src/Utils.ts @@ -259,6 +259,11 @@ module spine { static toSinglePrecision (value: number) { return Utils.SUPPORTS_TYPED_ARRAYS ? Math.fround(value) : value; } + + // This function is used to fix WebKit 602 specific issue described at http://esotericsoftware.com/forum/iOS-10-disappearing-graphics-10109 + static webkit602BugfixHelper (alpha: number, pose: MixPose) { + + } } export class DebugUtils {