さぁ、スクラッチでナニ作る!?
Scratchって実は同時に存在できるクローンは約300体まで。だから「もっとパーティクルを増やしたい!」と思っても上限に引っかかっちゃう。このチュートリアルでは、その300体の上限を賢くかわす「パーティクルリサイクル」を学ぶよ。コツはシンプル:リサイクルして使い回すだけ。たった300体のクローンが無限に流れていくように見えるから、見た目の迫力はそのまま。弾幕シューティングや雪・雨のエフェクトにも応用できる、知ってるとかなり得するテクニックだよ。(ちなみに300じゃなくて20とかでも十分に大量に見えるテクニックでもある)
動画で見てみよう
チュートリアルの元になった作品
今回の目標
スターター作品をリミックスしよう
このチュートリアルにはスターター作品があります。使わなくても大丈夫だけど、最低限の素材などが用意されてるので便利です。
スターター作品をダウンロード
#1パーティクルの準備
準備
スプライト「パーティクル」を開く
| スプライトについて |
|---|
| 画面左端からバーのX座標まで移動する粒子スプライト。フラグクリック時にサイズを10に設定し、クローンを300個生成する。各クローンはランダムなY座標から出発し、バーに到達するまで右へ移動し続ける。 |
| どんな役割か |
| パーティクルの動きを作るよ!フラグを押すと300個のクローンが画面の左からバーめがけてわーっと流れていくアニメーションになるよ。ランダムな高さから出発するから、自然なばらけ方になるんだ。 |
実装
が押されたときでスタートして、大きさを ( ) %にするで大きさを10%にする。普通は10%ってかなり小さいけど、この後大量にクローンを作るから、小さいほうがパーティクル感が出るんだよね。
#2300体のクローン生成
準備
変数「★クローン数」を追加
生成したクローンの累計数を管理するグローバル変数。フラグクリック時に0にリセットし、クローン生成のたびに1ずつ増やす。
実装
まず「★クローン数」変数を0にリセットしてから、( ) 回繰り返すで300回ループを回す。ループの中で「★クローン数」を1ずつ増やしながら( ) のクローンを作るで自分自身のクローンを作っていくんだ。カウンター変数があると今何体目か把握できるから、デバッグにも便利だよ。
#3クローンの出発地点
クローンされたときでクローンの処理が始まったら、ずっとの中でまず左端(X座標-255)のランダムな高さにワープする。毎回違うY座標(-255〜255のランダム)から出発するから、パーティクルが自然にばらけて見えるんだ。
#4移動とリサイクル
( ) まで繰り返すで、バーのX座標より自分が右に行くまで20歩ずつ進む。( ) の ( )で他のスプライトの座標を読み取れるから、バーの位置が変わっても自動で追従できるんだ。
バーに到達したらループを抜けるけど、ここでdelete this cloneは使わない。foreverループの先頭に戻って、また左端からやり直す。同じ300体をぐるぐる使い回すことで、300体以上のパーティクルが次々に流れているように見えるんだ。
まとめ
クローンを消さずにずっとループで位置をリセットする「パーティクルリサイクル」、覚えておくとめっちゃ便利だよ。Scratchの300体上限を気にせずに、大量のパーティクル演出が作れるようになったね。弾幕シューティングや雪のエフェクトなど、いろんな場面で応用してみよう!