Scratch(スクラッチ)でゲームを作る方法とは?具体的なステップとまずは試したい動作を紹介
はじめまして、エンジニアスタイル編集部です!
コラムページでは、ITフリーランスに向けてお役立ち情報を発信します。Twitterではホットな案件を紹介してまいりますので、ぜひフォローをお願いいたします!
本記事が、皆様の参考になれば幸いです。
経験がまだ少ない方にもわかりやすく説明するために、初歩的な内容も記載しております。記事も長いので、実務経験豊富な方は、ぜひ目次から関心のある項目を選択してください。
エンジニアスタイルは、最高単価390万円、国内最大級のITフリーランス・副業案件検索サービスです。Scratchのフリーランス・副業案件一覧をご覧いただけますのであわせてご確認ください。
目次
Scratch(スクラッチ)でのゲームの作り方とは?具体的なステップを紹介
Scratch(スクラッチ)とは、マサチューセッツ工科大学メディアラボが小中学生向けに開発したビジュアルプログラミング言語です。
ビジュアルプログラミング言語とは、図形(ブロック)などを使って、見た目にわかりやすいプログラミングができる言語です。
そのため、ビジュアルプログラミングはブロックプログラミング言語とも呼ばれます。
ビジュアルプログラミング言語では、英語などを使った一般的なプログラムを記述するのではなく、ブロックを組み合わせて繋げるだけでプログラミングができます。つまり、プログラミングの知識がなくともプログラミングが可能です。
ここでは、Scratch(スクラッチ)を使用したゲームの作り方の具体的なステップを紹介します。
どのようなゲームを作りたいか、ゲームの構想を練る
Scratch(スクラッチ)に限らず、ゲームを作ろうと思ったとき、まずどんなゲームを作るかを考えましょう。
ゲームにも複数種類あるため、自分が作りたいもの、好きなものを思い浮かべながら、どのようなゲームを作りたいか、ゲームの構想を練ります。
キャラクターゲームや、迷路ゲームなど、自分が興味を持つテーマを選ぶと楽しみながら取り組むことができますが、大切なのは「誰にどんなゲームを遊んでもらいたいか」を考えることです。
自分が作ったゲームで楽しく遊んでいる姿をイメージしながらゲームの構想を練ると、よりよいゲームを作ることができるでしょう。
ゲームの設計・仕様書を作るゲーム制作ツールの用意
次に、ゲームの設計を行います。ゲームの目的やルール、キャラクターの動きなどをまとめた仕様書を作成しましょう。
仕様書とは、ゲームの設計図となります。ゲームの内容を具体的な仕様書として落とし込んでいきます。
例えば、以下の3点を具体的に設計すると良いでしょう。
ゲームの目的や目標
プレイヤーがゲーム内で達成すべき目的や目標を設定します。
例えば、敵を倒して最終ボスに挑戦する、パズルを解いてステージクリアするなどです。
ゲームのルール
プレイヤーがゲーム内でどのようなアクションや操作を行うのか、ルールを明確に定めます。
例えば、ボタンを押すとキャラクターがジャンプする、特定のアイテムを集めると得点が加算されるなどです。
ゲームの難易度
ゲームの難易度を設定しましょう。初心者向けの簡単なレベルから、上級者向けの難しいレベルまで、プレイヤーのレベルに合わせて調整します。
上記3つのことを決めると、ゲーム制作の方向性が明確になります。
また、ゲーム制作ツールでScratch(スクラッチ)を使用するためには、公式ウェブサイトでアカウントを作成しましょう。
アカウント作成をした後に、ブラウザ上で手軽にゲーム制作を始めることができます。
ゲームで使う素材を用意する
ゲームに必要なキャラクターや背景などの素材を用意しましょう。
Scratch(スクラッチ)内で使用する画面上に表示する画像を「スプライト」と呼びます。
スプライトには、Scratch(スクラッチ)内に登録されているキャラクター、地面、建物などがあるため、それを使用しても問題ありませんが、自分で作成した画像をアップロードして使用することも可能です。
アップロードした画像は、コスチュームの編集機能でサイズを変更し、自分好みのサイズに変えることもできます。
初めは、最初から使用できる画像を使ってもよいですが、ぜひ自分で作成した画像を使ってオリジナルなゲームを作成してみましょう。
そうすることで、よい愛着を持ってゲーム制作を行うことができます。
仕様書に沿ってプログラミング
いよいよ、先ほど作成したゲームの仕様書に基づいてプログラミングを行います。
プログラミングとは、コンピュータに指示を与えることです。
Scratch(スクラッチ)では、ブロックと呼ばれるコンピュータに指示を与えるエリアを組み合わせてキャラクターの動きやゲームのルールを設定します。
例えば、「キャラクターが上矢印キーを押すと、ジャンプする」といったアクションをプログラミングで実現することができます。
テストして問題なければ完成
最後に、プログラミングを作り進めたら完成したら、実際に動かしてゲームをテストプレイしてみましょう。
キャラクターの動きやゲームのルールが仕様書通りに正しく機能しているか確認します。
仕様書と異なる動きをした場合、必要に応じてプログラミングの修正を行います。
この作業は、デバッグと呼ばれます。
プログラミングを行う際は、こまめにデバッグを行って、テストプレイすることがおすすめです。
地道な作業ですが、これらの作業を繰り返し行い、問題がなければ、ゲーム制作は完成となります。
スクラッチでゲームの作る時にまずはやってみたい動作
Scratch(スクラッチ)でゲームを作るときにやってみたい動作を紹介します。
キャラや背景の設定
前述したとおり、Scratch(スクラッチ)内にはあらかじめ用意してあるキャラクターがあります。
今回はそのキャラクターの作り方を紹介します。
ちなみに、Scratch(スクラッチ)でキャラクターは「スプライト」と呼ばれます。
- スクラッチの公式サイトの左上にある「作る」をクリックします。
- 黄色いネコ(スプライト1)が表示されます。
- 黄色いネコをそのまま使用する場合は、コスチュームタブで目や頭、体、色を編集します。
- 黄色いネコ以外のスプライトを設定する場合、2)の右下にある「スプライトを選ぶ」をクリックしてください。
- スプライト一覧から設定するスプライトを選択します。
次に背景の設定方法を紹介します。
背景は「ステージ」と呼ばれます。
- スクラッチの公式サイトの左上にある「作る」をクリックします。
- 「コード」タブの「イベント」をクリックします。
- 画面右下の背景エリアの「背景を選ぶ」をクリックします
- 背景一覧からステージを選択します。
キャラを動かす
スプライトと呼ばれるキャラクターの動かし方を紹介します。
キャラを左右に動かしてみよう
スプライトと呼ばれるキャラクターを左右に動かす方法を紹介します。
- スクラッチの公式サイトの左上にある「作る」をクリックします。
- 「コード」タブの「イベント」をクリックします。
- 「イベント」の緑色の旗がついたブロックを右側のスクリプトエリアにドラッグアンドドロップします。
- ブロックの上に「もし〜なら」ブロックを重ねていきます。
- ブロックの上に動作のための「xxxキーが押された」ブロックを重ねます。
- 「xxxキーが押された」をクリックして動かした方向の「矢印」を選択します。
これで、スプラウトは左右に動くようになります。
ジャンプさせる
スプライトと呼ばれるキャラクターを左右に動かす方法を紹介します。
- スクラッチの公式サイトの左上にある「作る」をクリックします。
- ドラッグアンドドロップでスクラッチを地面につけます。
- 「イベント」の緑色の旗がついたブロックを右側のスクリプトエリアにドラッグアンドドロップします。
- 「動き」タブの「動き」をクリックします。
- 「x座標を-xx、y座標を-xxにする」とドラッグアンドドロップします。
- 「制御」をクリックして、「ずっと」ブロックをドラッグアンドドロップします。
- ブロックの上に「もし〜なら」ブロックをドラッグアンドドロップします。
- 「調べる」をクリックして、「xxキーが押された」をドラッグアンドドロップします。
- 「xxキーが押された」をクリックして「上向き矢印キー」にします。
- 「制御」をクリックし、「10回繰り返す」をドラッグアンドドロップします。
- 「動き」をクリックして、「y座標を10ずつ変える」をドラッグアンドドロップします。
- 「y座標を10ずつ変える」の10の数字を小さくします。
これで、スプラウトはジャンプすることができます。
当たり判定を作成する
当たり判定を作成する方法を紹介します。
- スクラッチの公式サイトの左上にある「作る」をクリックします。
- 「コード」タブの「変数」をクリックします。
- 「リストを作る」をクリックします。
- リスト名を入力します。
- リストがスクラッチ画面に表示されるので「あたり」「はずれ」を追加します。
- 「イベント」をクリックして、「ずっと」ブロックをドラッグアンドドロップします。
- ブロックの上に「もし〜なら」ブロックをドラッグアンドドロップします。
- 「調べる」をクリックして、「What’s your name?と聞いて待つ」をドラッグアンドドロップします。
- 「What’s your name?と聞いて待つ」を当たり判定の文言に変更します。
- 「制御」をクリックし、「10回繰り返す」をドラッグアンドドロップします。
- 「調べる」をクリックして、「答え」をドラッグアンドドロップします。
- 「変数」をクリックして「なにかをリストに追加する」をドラッグアンドドロップします。
- 「あたりをリストに追加する」に変えます。
- 11.〜13.の手順で「はずれ」を作成します。
- 「見た目」をクリックして「こんにちは!という」をドラッグアンドドロップします。
- 「変数」「リストの1番目」、「」演算」「1から10までの乱数」、「変数」「リストの長さ」を重ねます。
- 「こんにちは!という」を当たり判定の文言に変更します。
これで、当たり判定を作成することができます。
キャラに音を付けてみる
キャラに音をつける方法を紹介します。
- スクラッチの公式サイトの左上にある「作る」をクリックします。
- 「音」タブの「音を選ぶ」をクリックします。
- 一覧から音を選択します。
これで、キャラに音をつけることができます。
Scratch(スクラッチ)でゲームを作る時のコツとは
Scratch(スクラッチ)でゲームを作るときのコツはあるのでしょうか?
ここでは、Scratch(スクラッチ)のコツを紹介します。
他の人が作ったゲームで遊んで参考箇所を洗い出してみる
Scratch(スクラッチ)は、他の人が作ったゲームを見たり、遊んだりすることができます。
自分で遊んでみて面白いと思ったゲームには、自分がゲームを作るときに参考になるポイントがあります。
実際に自分で作ることをイメージしながら遊ぶことが重要です。
人が作ったゲームを参考にすることで、どのような仕組みなのかをより理解することができます。
例えば画像や、音楽など、ゲーム全体のルールから細かいルールなどを参考にすることができるでしょう。
それらを参考に、アレンジしたゲームを作ることもできます。
ある程度基本的なゲームが作れるようになったら、他の人が作ったゲームを真似することがゲームを作るコツです。
独学が難しければスクールに通ってみる
Scratch(スクラッチ)は、有名なプログラミング言語であるため、インターネット上に参考になる情報がたくさんあります。
独学でまず触ってみることをおすすめしますが、分からないことが解消されないと前に進めないこともあるでしょう。
そこで、独学が難しい場合はITスクールに通ってみることもおすすめします。
ITスクールの利点としては、カリキュラムが充実していること、分からないことが出てきたときに質問ができることが大きな魅力といえるでしょう。
また、ITスクールでは同じくScratch(スクラッチ)に興味を持った人が集まっています。お互いに良い刺激を与えあうことで、新しいアイディアを思いついたり、独学よりもより詳しくスクラッチを学ぶことができるといえます。
Scratch(スクラッチ)を学べるスクールをご紹介します。
スタープログラミングスクール
スタープログラミングスクールは、小中学生向けの講座を多数運営しているプログラミングスクールです。
Scratch(スクラッチ)でのプログラミングを学べるScratchプログラミングコースは、少人数クラス制でクラスメイトとともに学べる工夫がされています。
アルスクール
アルスクールは、ひとり一人に合ったレッスンを行うスクールです。
Scratch(スクラッチ)のレッスンも行っており、簡単なゲームやアニメーションが作れます。
まずはアウトプットを一つ作ってみる
まず、Scratch(スクラッチ)でゲームを作ってみましょう。
実際に触ってみることが上達する一番の近道です。
最初は、小さなゲームを作成することをおすすめします。完成を目指すのではなく、楽しく作ることを心がけましょう。
分からないことは、Scratch(スクラッチ)のヘルプサイトや、インターネットで調べてみます。
他の人のゲームを参考にすると面白いアイディアが生まれる可能性があります。
Scratch(スクラッチ)でゲームを作ることで、プログラミングの基本を学ぶことができます。
Scratch(スクラッチ)でプログラミングを学び、作ったゲームは公開して他の人にも遊んでもらいましょう。
よりゲームを作る楽しさ、プログラミングの楽しさを覚えることができると思います。
Scratch(スクラッチ)で作れる具体的なゲーム例を紹介
では、Scratch(スクラッチ)でどのようなゲームが作れるのでしょうか。
ここでは、Scratch(スクラッチ)で作れる具体的なゲーム例を紹介します。
レースゲーム
シンプルでとてもわかりやすいレースゲームです。
基本操作は矢印キーで行います。
また、作者のこだわりとして、キーボードの「C」を押すと車のデザインも変わります。
数独
難易度が選べる数独パズルゲームです。
基本操作は、マスに数字を入力するだけ。「0」を入力することで削除できます。
難しい動きがすくないゲームなので、真似して作成してみるとよいでしょう。
色塗りゲーム
マウスで線を描くとブラックホールに吸い込まれるペイントゲームです。
基本操作はマウスで線を描くだけです。
色も変化していくため、線を描いているだけでも楽しめるでしょう。
シューティング
ヘリコプターやミサイルなどが登場する横スクロールのシューティングゲームです。
マウスを上下に動かすと、スーパーマンが上下に動きます。
音がついて、上下の動きがついているため、参考にするのがよいでしょう。
まとめ
プログラミング学習は今や人気の習い事です。
なぜなら小学生のプログラミング学習が必修化になり、プログラミング教室に通う小中学生も少なくありません。
Scratch(スクラッチ)は無料サービスであるため、費用が掛からず手軽に始められるので、人気が高まっています。
一度公式サイトでScratch(スクラッチ)に触れてみることをおすすめします。
- CATEGORY
- 学習
- TAGS
-
-
-
-
-
-
-
【C言語/C++】PCアプリケーション開発案件の 求人・案件
- 650,000 円/月〜
-
その他
- C++ C言語
-
【セキュリティコンサル】システムリスク管理案件の 求人・案件
- 1,050,000 円/月〜
-
その他
-
【COBOL】生保会社向けシステム開発案件の 求人・案件
- 650,000 円/月〜
-
その他
- COBOL
-
【PMO】販売管理オーダーマネジメントシステム案件の 求人・案件
- 900,000 円/月〜
-
その他
-
【複業/PM】オフショア開発支援案件の 求人・案件
- 600,000 円/月〜
-
その他
-
【リモート/TypeScript/Python/Flutter/Vue.js/Node.js/GCP/AWS】技術本部/R&D部Head of AIの 求人・案件
- 1,000,000 円/月〜
-
その他
- Python JavaScript TypeScript Nodejs SQL
-
【リモート/TypeScript/Python/Flutter/Vue.js/Node.js/GCP/AWS】技術本部SRE(AWS)の 求人・案件
- 1,300,000 円/月〜
-
その他
- Python JavaScript TypeScript Nodejs
-
【リモート/TypeScript】技術本部/プロダクト開発部エンジニアリングマネージャーの 求人・案件
- 1,000,000 円/月〜
-
その他
- TypeScript Python JavaScript Nodejs
-
【フルリモート/Golang】歌特化ライブ配信アプリのサーバサーバサイドエンジニアの 求人・案件
- 900,000 円/月〜
-
その他
- Go言語 SQL
-
【週5日・首都圏限定】人事システム改修(java)の 求人・案件
- 550,000 円/月〜
-
その他
- Java SQL
-
【週5日・首都圏限定】地方自治体向けシステム改修(java)の 求人・案件
- 550,000 円/月〜
-
神奈川県
- Java
-
【週5日・首都圏限定】データ移行に伴う開発支援(VB.net)の 求人・案件
- 550,000 円/月〜
-
埼玉県
- VB.NET