【モグラたたきゲーム】流れる雲のアニメーションを作成する

画像1

タイトル画面で雲が流れるアニメーションを実装する。

ロードマップ

1、雲を形作る

2、横スクロールさせる

3、画面外に消えた後、再度画面内にスクロールさせる

1)雲を形作る

Polygonクラスを使い多角形を形成した後、

画像3

角を丸くするメソッドcalculateRoundBufferを使用することで雲っぽく見せる。

画像2

2)横スクロールさせる

movedByメソッドと、Periodic::Sawtooth0_1()メソッドを使い実現させる。

画面の最大横サイズに、時間経過で変化するSawtooth0_1()、つまり0~1を掛けることで端から端まで移動させている。

3)画面外に消えた後、再度画面内にスクロールさせる

左端から右端なら問題ないが、画面中央から右端へ移動させる場合は少し工夫を加える。

Sawtooth0_1()が1になったあと、雲のx位置を短くする計算を与えることで、中央に戻るのではなく左端に移動させることができる。

画像4

isCloud3Hidden が左端へ移動させるトリガーで、右端に到達したらtrueになる。

trueの場合は左端枠外に配置するよう引き算の数値を代入している。