本ページはプロモーションが含まれています。

スクラッチでゲームを作っているとスプライトの重なりが気になることはないでしょうか。
たとえばキャラクタが奥にいるのに、一番手前に重なって見えてしまう。
高いところから見おろした画面表示がスクラッチでうまく表現できない。
「ファイナルファイト」のようなベルトスクロールアクションゲームはどうやってスプライトで表現すればいいの?


本記事では、そのようなお悩みを解決できるスプライトの重なりで奥行を表現する方法をご説明します。スクラッチでベルトスクロール風アクションやその他のゲーム作成でお役に立てるかと思います。
ぜひ最後までよんでみてください。

スクラッチのスプライトのレイヤー(重なり)で奥行きを表現するとは?
本記事では画面の下にあるスプライトほど、手前に表示される状態のこととして説明していきます。
具体的にはY軸が小さいほどスプライトが手前に、Y軸が大きいほどスプライトが裏に表示される状態。
スプライトが画面下にいくほど見ているプレイヤーに近いという視点です。
ベルトスクロールアクションや上から見下ろすゲームはそんな表現になっています。
スクラッチでスプライトのレイヤーを調整する方法を発見
スクラッチでは次のブロックを駆使してスプライトのレイヤー(重なり)を調整します。

でも、これをどう使えばスプライトの重なりを調整できるのか?
これがわからない・・・。
ググってみてもScratchのスプライトの重ね方で「これだ!」っていうのがみつかりません。
そんなある日、たまたまYouTubeを見ていると、その方法を説明していた動画を発見。
一度は見ていただきたい「目からウロコ」の動画です。
ちなみに英語なので自動翻訳する必要があります。
最近のYoutubeの翻訳はわかりやすいので参考にしてみてください。
ベルトスクロール風アクションゲームにこのスクリプトをためしてみると・・・
早速このスクリプトをためしてみました。
サンプルゲームは「野田クリスタルのこんなゲームが作りたい! Scratch3.0対応」のチャプター3です。
ベルトスクロール風アクションの作り方と素材が掲載されています。
レイヤー表示に関するプログラムがありませんでしたので、当記事のスクリプトを主人公キャラと敵キャラに適用してみると・・・。


主人公キャラをどれだけ操作しても、しっかりと機能しています。
Y軸が下がれば手前に。
Y軸が他スプライトより上に行けば奥に。
違和感は完全になくなりました!
まとめ
スクラッチのスプライトのレイヤー調整について説明してきました。
紹介したYoutube動画内のスクリプトがとても参考になります。
上から見下ろすゲームを作るときやベルトスクロールアクションのゲームを作る時など、広く利用できるスクリプトかと思います。
リスト、変数などプログラミング基礎知識が必要なので、すこし難しく感じるかもしれません。
用語やプログラミングの組み方については、書籍などを参考にしてみましょう。
もしプログラミングの組み方を1から覚えるなら、プログラミングスクールで習うのも一つの手段です。
一度プログラムの組み方や用語・用法を覚えてしまえば、本や動画も理解が進み、自分で作るときに困らなくなります。
Scratchのレイヤーや当たり判定などを調整できるようになると、ゲーム制作の幅が一気に広がりますよ。
プログラミングスクールについてはこちらをご参考になさってください。
