前ページで終了時の操作を学びました。 ここでは、毎フレームの処理を自分で書いてみましょう。
-
PGCircle()を書きます。 -
.position(cx:cy:),deltaPosition(dx:dy:),.life(),deltaLife()を指定します。はじめの初期化です。 -
.completion{ }で再利用を行います。.position(cx:cy:)、deltaPosition(dx:dy:),.life()をそれぞれ元の値に戻します。.color()は前回と同じくランダムにします。 -
続けて
.iterate{ }を書きます。そのブロック内で$0.deltaPosition(dx:dy:)を書きます。deltaPosition.yの値を1.08倍します。
|
|
- 「コードを実行」を押します。
目標
- 円が少しずつ加速して落ちるアニメーションが繰り返されれば成功です。
終わったら次のページへ進みます。
- Note:
.iterate{ }のブロックは、毎フレーム(1秒間に60回)呼ばれます。今回はdeltaPosition.yを毎回1.08倍しているので、1フレームごとに速度が速くなります。