/// <summary>Interpolates the objects of firstFrame and secondFrame.</summary> /// <remarks>Interpolates the objects of firstFrame and secondFrame.</remarks> /// <param name="currentFrame"></param> /// <param name="nextFrame"></param> /// <param name="xOffset"></param> /// <param name="yOffset"></param> protected internal virtual void transformObjects(SpriterKeyFrame currentFrame, SpriterKeyFrame nextFrame, float xOffset, float yOffset) { this.rect.set(xOffset, yOffset, xOffset, yOffset); if (!this.updateObjects) { return; } this.updateTransformedTempObjects(nextFrame.getObjects(), this.tempObjects2); this.updateTempObjects(currentFrame.getObjects(), this.nonTransformedTempObjects); for (int i = 0; i < this.currenObjectsToDraw; i++) { if (this.tempObjects[i].active) { this.tweenObject(this.nonTransformedTempObjects[i], nextFrame.getObjectFor(this.nonTransformedTempObjects [i]), i, currentFrame.getTime(), nextFrame.getTime()); } } }
/// <summary>Interpolates the bones for this animation.</summary> /// <remarks>Interpolates the bones for this animation.</remarks> /// <param name="currentFrame">first keyframe</param> /// <param name="nextFrame">second keyframe</param> /// <param name="currentAnimationTime"></param> /// <param name="key2StartTime"></param> /// <returns>interpolated SpriterBone array</returns> protected internal virtual void transformBones(SpriterKeyFrame currentFrame, SpriterKeyFrame nextFrame, float xOffset, float yOffset) { if (this.rootParent.getParent() != null) { this.translateRoot(); } else { this.tempParent.setX(xOffset); this.tempParent.setY(yOffset); this.tempParent.setAngle(this.angle); this.tempParent.setScaleX(this.flippedX); this.tempParent.setScaleY(this.flippedY); } this.setScale(this.scale); if (!this.updateBones) { return; } this.updateTransformedTempObjects(nextFrame.getBones(), this.tempBones2); this.updateTempObjects(currentFrame.getBones(), this.nonTransformedTempBones); for (int i = 0; i < this.nonTransformedTempBones.Length; i++) { if (this.tempBones[i].active) { this.tweenBone(this.nonTransformedTempBones[i], nextFrame.getBoneFor(this.nonTransformedTempBones [i]), i, currentFrame.getTime(), nextFrame.getTime()); } } }