2021.06.15
習い事Q&A 松下孝太郎

Scratch(スクラッチ)の基本的な使い方や、プログラミング例・サンプルを紹介

スクラッチはどうやって始めたら良いの?東京情報大学総合情報学部の教授であり、プログラミング教育者やサイエンスライターとしても活躍する、松下孝太郎さんが解説します。

関連記事:オンラインのプログラミング無料学習サイトやスクールおすすめ9選 選び方を解説

みらのび掲載中のプログラミングが学べる習い事教室一覧(無料体験受付中)

今日のポイント

  1. Scratch(スクラッチ)とは?
  2. Scratch(スクラッチ)で作られたおすすめゲーム例
  3. 【初級編】スクラッチ(Scratch)でゲームを作成してみよう
  4. 【中級編】スクラッチ(Scratch)のゲームをアレンジしてみよう

Scratch(スクラッチ)とは?

スクラッチ(Scratch)は子どもから大人まで幅広い年齢層で楽しめるビジュアルプログラミング言語です。2020年度から始まった小学校におけるプログラミング教育必須化でも注目されており、今後、ますます利用範囲が広がると思われます。

スクラッチは、インターネットが利用できれば、公式サイト(https://scratch.mit.edu/)にアクセスして自由に使うことができます。また、スクラッチの公式サイトからアプリをダウンロードしてパソコンなどにインストールして使うこともできます。

ここでは、未就学児から小学校低学年の子どもが挑戦すること想定し、スクラッチを使ったプログラミング例やプログミングのコツなどを解説します。今回は、子どもにも人気のテーマであるゲームを軸にご紹介しましょう。

みらのび掲載中のプログラミングが学べる習い事教室一覧(無料体験受付中)

Scratch(スクラッチ)で作られたおすすめゲーム例

スクラッチの公式サイトには、たくさんの作品が公開されています。他の人の作品を見ることは、スクラッチでできることを理解するだけでなく、自分で作品を作る場合の参考にもなります。

まずは、スクラッチの公式サイト(https://scratch.mit.edu/)にアクセスしましょう。

スクラッチの公式サイトが表示されますので、上部にある「見る」をクリックしましょう。

 公開されている作品の一覧が表示されます。「ゲーム」をクリックすると、ゲームの一覧が表示されますので、このなかから、見たいゲームをクリックして選びます。画面の下の方にもたくさんのゲームがありますので、画面右横のスクロールバーを下にドラッグしてみてください。

ゲームは、シューティングゲーム、アクションゲーム、パズルゲームなどさまざまな種類があります。いくつかの種類のゲームを見てみましょう。実際にゲーム名で検索をしてみてください。

シューティングゲーム「mouse attack」

ゲームのURL:https://scratch.mit.edu/projects/512194998/

シューティングゲームの「mouse attack」です。siyoikauさんの作品です。マウスで戦闘機を動かし、スぺースキーで弾を発射して隕石を破壊します。隕石を破壊すると得点が入ります。3回隕石に当たるとゲームオーバーになります。

得点やライフの表示、効果音もあり臨場感のあるゲームです。ゲームのストーリーはシンプルに見えますが、プログラム自体は初学者には難しいものとなっています。ゲームの作成に関しては、まず得点やライフなどの表示がないシンプルなものから作成し、徐々に複雑なものに挑戦していくと良いでしょう。

アクションゲーム「《#4》ғɪsʜɪɴɢ」

ゲームのURL:https://scratch.mit.edu/projects/494072759/

 アクションゲームの「《#4》ғɪsʜɪɴɢ」です。zohsamaさんの作品です。マウスをクリックして釣り竿を上げ下げして魚を釣ります。

マウス操作のみでゲームができ、ゲームの動きもゆっくりしたものになっていますので、小さな子どもでも簡単に操作することができます。かわいいキャラクターとゆったりとした効果音にも癒されます。キャラクターの数が多いため、キャラクターごとに動きの異なるプログラムが必要となるため、プログラムは相当のものとなっています。

パズルゲーム「Reversi(オセロ)」 

ゲームのURL:https://scratch.mit.edu/projects/87543939/

パズルゲームの「Reversi(オセロ)」です。syatoさんの作品です。ネコと対戦します。マウスでクリックして自分の石を置いていきます。 

世界的に知られているオセロゲームです。コンピュータと対戦する形式になっています。パズルゲームはその局面ごとに適切な場合分けの処理が必要になります。したがって、プログラミング技術だけでなく、算数や数学の知識も必要になる場合があります。プログラミングを行いながら算数や数学の実践的な知識を身につけることも期待できます。

【初級編】スクラッチ(Scratch)でゲームを作成してみよう

ゲームを初めて作る子どもにおすすめしたいのは、ゲームの内容(ストーリー)を決めやすく、アレンジもしやすい、シューティングゲームです。ここでは、その作り方を解説します。

ゲームは4つの作成手順で作成します。

  1. ゲームの内容の決定
  2. 背景の設定
  3. スプライト(キャラクター)の設定
  4. コードの作成

ゲームが完成したら動かしてみましょう。

みらのび掲載中のプログラミングが学べる習い事教室一覧(無料体験受付中)

関連記事:小学校のプログラミング教育必修化とは?目的・内容・現状・家庭学習できる教材まとめ

関連記事:中学校でプログラミングが必修化!おすすめ言語は何?小学生から勉強すべき?

①ゲームの内容の決定

今回は、左右に動いているロボットに宇宙船から弾を発射し、弾がロボットに当たったらロボットの色が変わるようにします。 ここでは、背景は「月面」、キャラクターは「宇宙船」「弾」「ロボット」を使用します。なお、スクラッチではキャラクターのことを「スプライト」と呼びます。

それでは、トップ画面の「作る」を押し作成画面を開きましょう。

②使用する背景の決定

作成画面を開いたら、初めに背景の設定を行います。

画面右下にある画像マークにカーソルを合わせ「背景を選ぶ」ボタンをクリックしましょう。

「背景を選ぶ」ページが表示されますので、この中から「Moon」をクリックして選びましょう。 

背景が読み込まれました。

③使用するキャラクター(スプライト)を決定 

次にスプライト(キャラクター)の設定を行います。ネコは使わないので、アイコンの右上のゴミ箱のボタン(赤丸の部分)をクリックして、ネコを消します。

ネコが消えました。

続いて、使用するスプライトを読み込みます。ここでは、宇宙船は「Rocketship」、弾は「Ball」、ロボットは「Robot」を読み込みます。まず、宇宙船「Rocketship」を読み込みます。右下の「スプライトを選ぶ」ボタンをクリックしましょう。

「スプライトを選ぶ」が表示されますので、「Rocketship」をクリックして選びます。

宇宙船が読み込まれました。

続いて、宇宙船と同様の手順で、弾「Ball」と、ロボット「Robot」も読み込みます。

④コードの作成

コードを作成するときは、スプライトごとにブロックを組み合わせてプログラムを作成します。スクラッチでは、ブロックを組み合わせたものをコードとよびます。

右下のスプライトリストにあるスプライトのアイコンをクリックすると、そのスプライトのプログラムを作成できます。クリックしたあと、コードエリアの右上に宇宙船のアイコン(赤丸の部分)が表示されているかを確認します。

中央のコードエリアにブロックを並べていきます。ブロックはカテゴリーごとに分類されています。カテゴリーボタン(赤丸の部分)をクリックし、それぞれのカテゴリーから必要なブロックをコードエリアにドラッグして並べていきます。

また、スクロールバー(青丸の部分)をドラッグして必要なブロックを探すこともできます。

宇宙船のコードができました。

次に、弾のコードを作成します。右下のスプライトリストの弾のアイコンをクリックし、コードエリアの右上に弾のアイコンが表示されていることを確認し、ブロックをコードエリアに並べていきます。

弾のコードができました。

最後に、ロボットのコードを作成します。右下のスプライトリストのロボットのアイコンをクリックし、コードエリアの右上にロボットのアイコンが表示されていることを確認し、ブロックをコードエリアに並べていきます。

ロボットのコードができました。これで、3つのスプライトのコードが作成できました。

ゲームを動かしてみよう!

ゲームが完成したら、右上にある緑色の旗のボタンをクリックしてゲームを動かして遊んでみましょう。

← →キーで宇宙船を動かし、スペースキーで弾を発射します。なお、ゲームを終了するときは、緑色の旗のボタンの隣の赤色の丸のボタンをクリックします。 

【中級編】スクラッチ(Scratch)のゲームをアレンジしてみよう

作成したゲームをアレンジしてみましょう。いろいろなアレンジがありますが、ここでは得点を付けてみます。

ロボットに弾が当たったら1点得点するようにします。なお、弾はロボットを貫通しますので、ロボットに弾が触れている間、得点が加算されます。

その仕組を作るときには、変数を使います。

変数の作成で「得点」をつけよう

変数で「得点」を作成します。変数とは数や文字を入れる箱のようなものです。画面左側にある変数のカテゴリボタン(青い円で囲ったオレンジ色のボタン)をクリックし、次に「変数を作る」ボタン(赤い円で囲ったところ)をクリックします。

「新しい変数」画面が表示されますので、「得点」と入力し、「すべてのスプライトラジオボタン」をクリックして、最後に「OK」ボタンをクリックします。

変数が作成され、画面右上にあるステージの左上部分に「得点」が表示されました。

コードを修正して得点の仕組みを作ろう

ここでは、ロボットのコードを修正して、ロボットに弾が当たったら得点されるようにします。なお、ゲームを開始するたびに、得点が0にリセットされるようにします。ロボットのアイコンをクリックして、ロボットのコードを表示させましょう。

ロボットのコードを修正します。「得点を0にする」ブロックと「得点を1ずつ変える」ブロックを追加します。

ゲームを動かしてみよう!

ゲームが完成したら、右上にある緑色の旗のボタンをクリックして、ゲームを動かして遊んでみましょう。ロボットに弾があたると得点が増えることを確認しましょう。

ここで紹介したゲームは下記のURLにアクセスするとダウンロードできます。

  • https://scratch.mit.edu/projects/531192905/
  • https://scratch.mit.edu/projects/531193474/

まとめ

今回は、親しみやすいテーマとしてゲームを選び、スクラッチの雰囲気を掴んでもらえるよう解説をしました。

スクラッチに限らず、プログラミングの上達のコツは、プログラムを沢山作成することにあります。プログラミングの経験をしながら、アルゴリズムやプログラムに関する知識を深めて行くことが上達への近道です。

関連記事:【Scratch 3.0】スクラッチのダウンロード&インストール方法

関連記事:小学校のプログラミング教育必修化とは?目的・内容・現状・家庭学習できる教材まとめ

みらのび掲載中のプログラミングが学べる習い事教室一覧(無料体験受付中)

※Scratch(スクラッチ)[ウェブアプリ、パソコン・タブレット用アプリ]。Scratchは、MITメディア・ラボのライフロング・キンダーガーテン・グループの協力により、Scratch財団が進めているプロジェクトです。https://scratch.mit.eduから自由に利用できます。CC BY-SA 2.0

松下孝太郎
松下孝太郎

神奈川県横浜市生まれ、横浜国立大学大学院 工学研究科 人工環境システム学専攻 博士後期課程修了、博士(工学)。現在は、(学校法人東京農業大学)東京情報大学 総合情報学部 教授。画像処理、コンピュータグラフィックス、教育工学等の研究に従事し、教育面ではプログラミング教育、シニアや留学生へのICT教育等にも注力。サイエンスライターとしても執筆や講演の活動を行っています。子どもの頃は、水泳、習字、そろばんなどの習い事や、当時流行っていた切手や貨幣の収集、TVゲームができる近所の駄菓子屋さんなどで遊ぶことに夢中でした。現在も週に1度は泳ぎ、切手や貨幣の収集を継続しています。スクラッチプログラミングの著書に、「今すぐ使えるかんたんScratch」( 技術評論社)、「親子でかんたんスクラッチプログラミングの図鑑 【Scratch 3.0対応版】」(技術評論社)、「スクラッチプログラミング事例大全集」(技術評論社)があります。その他、多数の著書があります。

関連記事 Related articles

新着 New!

お住まいのエリア・ジャンル・対象年齢から検索!
習い事教室を探す