swift3.1、spriteKitでゲームを作っています。
ボタンのタップの速さを競うゲームで、ボタンのタップが早くなると、テクスチャの切り替えによりアニメーションさせているノードも早く動いているかのように見えるよう設定しました。
しかし、最初に設定した時、複数の画像を利用してテクスチャを切り替えていたのですが、処理が重くなったせいか時間を計測するTimerの進みが遅くなり、1秒をカウントする間が2秒ほどかかるようになってしまいました。
そこで、一枚の画像に複数の画像をまとめ、SKTexture(rect:in:)によって画像を切り替えるように設定し直しました。
すると今度は、一見期待通りのTimerの動きをしているように思えたのですが、プレイ中2秒間ほどの間、Timerが倍の速さで進んでいることに気づきました。
この現象は、1プレイ中に1回発生することがあり、2回は発生しません。
Timerの進み方に関連したコードには手をつけていないはずなのですが、このような現象が発生する原因はどのようなものが考えられるでしょうか。
追記
一度人を動かすアニメーションをやめてみたのですが、それでも問題の現象が発生しました。また、この現象が発生するのは毎回タイマーが発火して約17秒後であることに気づきました。デバッグが不十分なまま質問して申し訳ありません。
回答2件
あなたの回答
tips
プレビュー