はじめてのスクラッチ
- ① スクラッチで順次処理を学ぼう!ネコを左右に動かすアニメーションの作り方【初心者向け】
- ② スクラッチでネコが正方形に動くアニメーションの作り方|座標と向きの使い方
- ③ スクラッチでネコが左右にスケートするアニメーションの作り方|繰り返しの使い方
- ④ スクラッチでネコが走るアニメーションの作り方|コスチューム切り替えの使い方
- ⑤ スクラッチでネコがランダムな速さで走るアニメーションの作り方|乱数の使い方 (いまここ)
さぁ、スクラッチでナニ作る!?
移動距離を毎フレーム乱数で変えることで「速さが変わる」ように見せる発想が効いている。等速移動ではなく「1回あたりの歩数を不確定にする」という考え方で、わずか1行のブロックから動きの揺らぎが生まれる設計になっている。速さを直接操るのではなく距離の確率的な変化を利用する点が興味深い。どんな組み方でこの揺らぎが作られているのか、見ていこう。
動画で見てみよう
チャンネル登録して応援よろしく!チャンネル登録する
チュートリアルの元になった作品
今回の目標
- 乱数ブロックで毎回ちがう歩数を使い、ネコの速さをランダムに変える
- 端に着いたら自動で向きを変えて、画面を行ったり来たりするネコのアニメーションを完成させる
スターター作品をリミックスしよう
このチュートリアルにはスターター作品があります。使わなくても大丈夫だけど、最低限の素材などが用意されてるので便利です。
スターター作品をダウンロード
#1スタート位置の設定
前回はコスチュームの切り替えでネコに歩くアニメーションをつけたよね。今回は「乱数」を使って、ネコの走る速さを毎回ランダムに変えてみよう。
準備
スプライト「ネコ」を開く
| スプライトについて |
|---|
| 画面の中をランダムに歩き回るネコのキャラクター。端で跳ね返りながら動き続ける。 |
| どんな役割か |
| ネコが画面をランダムに歩き回るよ!コスチュームが交互に切り替わるから、歩いてるみたいに見えるんだ。端に当たったら跳ね返るから、ずっと動き続けるね。 |
実装
x座標を ( ) 、y座標を ( ) にするでネコの位置をx: 0、y: -100にセットするよ。
Scratchの座標は数学の「直交座標系」と同じ仕組みで、ステージの中心がx: 0、y: 0になってるよ。右に行くほどxが増えて、上に行くほどyが増えるから、y: -100は中心から下に100の位置なんだ。横は-240〜240、縦は-180〜180が動かせる範囲だね。この座標の考え方はゲームエンジンでもほぼ同じだから、覚えておくと他のプログラミングでも役立つよ。
#2回転方法を固定する
回転方法を「左右のみ」にしておかないと、端で跳ね返ったときにネコが逆さまになっちゃう。(やってみても面白いかも)
旗を押すとネコが5〜30のランダムな歩数で左右に走って、端で跳ね返るようになったね。
#3ランダムに走らせる
いよいよ今回のメインだよ。ネコを毎回違う速さで走らせて、端まで行ったら自動で折り返す仕組みを作ろう。
ずっとの中で( ) から ( ) までの乱数を使い、5から30までの乱数を歩数にするよ。1回に動く距離をランダムにすることで、速さが毎回変わって見えるんだ。
#4アニメーション
コスチュームも毎回切り替えて走るアニメーションにして、もし端に着いたら、跳ね返るで画面端に着いたら自動で折り返すよ。
乱数ってサイコロと同じ仕組みだよ。「5から30」って指定すると、実行するたびにその範囲でバラバラな数字が出てくる。ゲームでは敵の出現位置やダメージ量にも使われていて、「同じゲームでも毎回ちょっと違う」っていう面白さを生み出してるんだ。
まとめ
乱数を使うと、同じプログラムでも毎回ちがう動きが楽しめるよ。距離をランダムにするだけで速さが変わって見えるのが面白いよね。次回は条件分岐を使って、ネコに判断力を持たせてみよう!