Scratch

スクラッチはプログラミングを始めるのにおすすめ!簡単なゲームを作ってレビューしてみた

Scratch プログラミング(9)

こんにちは、キッズプログラミング教室【アルスクール】です。

Scratch(スクラッチ)」という名前を聞いたことはありますか?

小学校のプログラミング教育でもすでに使われていて、世界中に利用者のいるプログラミング教材です。

 

でも、「プログラミングって難しいんじゃないの?」って思っている人も多いですよね。

そんなプログラミング学習の最初のハードルをクリアしてくれるのが「スクラッチ」です

アルくん
アルくん
スクラッチは、小学生でも簡単なゲームやストーリーが作れます。楽しくプログラミングを学べますよ。
自由ヶ丘校202104(36)

ゲーム!作ってみたい!

ママ
ママ
スクラッチって聞いたことあるけど、うちの子でもほんとにできるのかしら。
アルくん
アルくん
大丈夫!スクラッチは、一見難しいように思えるプログラミングのエッセンスを簡略化しているため、子どもでも使いやすいんです!
アルくん
アルくん
そのため、パパやママ・学校の先生たちにも大好評なんですよ。

そこで、今回は「スクラッチ」の使い方・おすすめポイント・簡単なゲームの作り方を紹介します

オンライン体験レッスン>> 【オンライン無料体験レッスン】詳しくはこちら

 

Scratch(スクラッチ)というプログラミング教材

Screenshot of scratch.mit.edu

MIT(マサチューセッツ工科大学)が開発|創造性が育つ

「スクラッチ」はマサチューセッツ工科大学(MIT)、メディアラボのライフロング・キンダーガーテンというグループが開発したプログラミング言語です。

スクラッチは、現在は最新版のバージョン3.0が利用できます。

「スクラッチ」では、高度なプログラミングでも使われているような基本的な考え方や代表的な概念を、小学生にも理解しやすいレベルに落とし込んでいます

【10歩進む】や【「こんにちは!」と言う】などの、コードがあらかじめ準備されているのです。

Scratch プログラミング(1)

そのため、グラフィカルで親しみやすく、簡単なものから複雑なゲームの超大作にいたるまで、使い方次第でじゅうぶん広く応用することができます。

 

また、スクラッチには、プログラミングスキル以外に、創造性を伸ばせるというメリットもあります。

スクラッチを開発したミッチェル・レズニック教授は、【Creative Learning】(創造的な学び)という教育理念を提唱しています。

スクラッチは、この【創造的な学び】が、継続的にできるように設計されています。

ママ
ママ
創造力はこれからの時代に大切って聞いたことがあるわ。
アルくん
アルくん
スクラッチは、楽しくプログラミング作品をつくりながら、創造性が伸ばせますよ。

ミッチェル・レズニック教授の論文では、創造的な学びをするために必要なスパイラル①~⑤が紹介されています。

  1. 何を作るかを想像する(Imagine)
  2. 想像したものをつくる(Create)
  3. 自分で遊ぶ(Play)
  4. 友人や家族に共有したくなる(Share)
  5. 様々なフィードバックを得ることができる(Reflect

①~⑤を繰り返す、このようなスパイラルを【Creative Learning Spiral(創造的な学びのスパイラル)】と言います。

スクラッチでは、オンラインコミュニティ機能を使って、このようなスパイラルになるよう設計されているのです。

参照:media.mit.edu

 

ビジュアルプログラミング言語

「スクラッチ」はなんといっても、無料のビジュアルプログラミング言語であることが最大の特徴です

プログラミングと聞いて思い浮かぶのは、真っ黒な画面に何やら細かい文字のオンパレード…ですよね。

ビジュアルプログラミング0(6)

ママ
ママ
これを見るとパソコンを閉じたくなるわね。 

従来のプログラミング言語ではコマンドの英語が難しいことが大きなハードルになっていました。

ビジュアルプログラミングの場合、文字が書いてある【ブロック】を移動するだけで、コンピューターに指示を出すことができます。

そのため、直観的に動作を理解しやすいのです。

アルくん
アルくん
左にあるブロックをドロップ・ドラッグするだけでキャラクターを動かせますよ。

ママ
ママ
それなら簡単ね。うちの子にもできそうだわ。

これにより、英語が苦手な方や低年齢の子どもにも非常に取っつきやすいものとなっています。

また、無料であることもユーザーの認知度を高める理由になっています。

 

プログラミング教育必修化

2020年度から小学校でプログラミング教育が必修になりました。

アルくん
アルくん
プログラミングは必修化で、ますます注目されていますよ。

「スクラッチ」はその直観的な分かりやすさから、プログラミング教材としての活用が期待されています

具体的には、基本操作から「正多角形をプログラムを使ってかく」「ねこから逃げるプログラムを作る」ことについて学ぶ予定です。

ママ
ママ
算数の時間にプログラミングするなんて、昔の授業とはずいぶん変わったのね。

実際に、小学校ですでにスクラッチを使ったプログラミング授業の実施例がたくさんあり、文部科学省などのサイトで実施例を見ることができますよ。

参照:小学校を中心とした プログラミング教育ポータル_文部科学省、総務省、経済産業省

 

また、スクラッチを用いた学習番組「Why!?プログラミング」(NHK)も放映されており、プログラミングコンテストも随時開催されています。

 

Scratchはブラウザ版でもダウンロード版でも使える

Screenshot of scratch.mit.edu

Scratch3.0はブラウザ(オンライン)でも、ダウンロード(オフライン)しても使えます。

 

ブラウザ版は、公式サイトの上部にある「作る」のタブを押せば、下のような画面になり、すぐに始めることができます。

Scratch プログラミング(1)

>>スクラッチをオンラインで使用する

 

また、ダウンロード版(オフライン)は公式サイトからダウンロードでき、無料で使えます。

Windows/MacOS/ChromeOS/Androidの各バージョンが用意されていますよ。

>>スクラッチ公式サイトでダウンロード

 

また、作ったプログラムを世界中のユーザーとシェアできるのも、スクラッチの魅力のひとつです。

ただし、シェアするにはログインが必要なため、ユーザー登録を行いましょう。

 

Scratch(スクラッチ)の使い方

Scratch3.0を起動すると、次のような画面になります。

Scratch プログラミング(1)

主な画面説明

  • 左上:地球マーク(言語選択)、ファイル(保存/読み出し)
  • 左端:ブロックのカテゴリ
  • 左端2番目:ブロックの種類
  • 中央:ブロックを置くところ
  • 右上:スプライトが実際に動く様子を確認する画面
  • 中央右下:スプライト(キャラクターや物など)選択
  • 右下:背景選択

 

長方形のジグゾーパズルのような形のものが「ブロック」です。

ブロックを中央にドラッグして縦につなげることで、「動作の順序」を指示します。

どこに何があるか覚えるのが難しいなー。
アルくん
アルくん
大丈夫!やっていけばすぐに慣れるよ!

 

例では、ネコが表示されています。

まず、このネコを動かしてみましょう。

ネコを動かすための手順を解説します。

手順

  1. イベント」から「緑の旗がクリックされたとき」を中央にドラッグ
  2. 動き」から「○歩動かす」を中央にドラッグして、下につなげます。
  3. ○に「100」と記入。
  4. 緑の旗」を押して実行します。
Scratch プログラミング(2)

右上の緑の旗を押すと、ネコが右に動きました。

ネコが動いた!100歩って、これくらいしか動かないんだ!

同じように他のブロックも配置すると、ブロックに書いてあるように動かすことができます。

例:15度回す、「こんにちは」と言う、など

これがはじめの一歩になります。

 

Scratch(スクラッチ)の作品例|サッカーゲーム

アルくん
アルくん
まずは、簡単なサッカー(PK)ゲームを作ってみよう!

サッカー大好き!

1つ目は、「ボールとキーパー」のサッカーゲーム、

2つ目は、「ボールとキッカーとキーパー」のサッカーゲームを紹介します。

 

簡単サッカーゲーム①|ボールとキーパー

Scratch プログラミング(33)
アルくん
アルくん
「ボールを押したら、ボールがゴールの方へ進む」っていう簡単なゲームだよ。

 

この簡単サッカーゲーム①は、次のように作ることにします。

  1. 緑の旗を押すと、キーパーが左右に動き続ける、ボールが所定の位置にいく
  2. サッカーボールを押すと、ボールがゴールの方へ動く
  3. キーパーに当たると、「ざんねん!」と言う
  4. ゴールできると、「ゴール!」と言う

 

アルくん
アルくん
作り方を解説するね。

まずは、背景とキャラクターを選びます。

画面右下の【背景マーク】のところを押すと背景が、その左にある【ネコマーク】を押すとキャラクターが選択できますよ。

Scratch プログラミング(52)

このゲームでは、背景のブロックから、サッカー場の背景を追加します。

「Soccer」と書かれている画像を選びます。

Scratch プログラミング(28)

背景ってたくさん選べるんだね!サッカー場も2つある!

そうすると、背景がサッカー場になります。

Scratch プログラミング(29)

 

次に、キーパーとサッカーボールのスプライト(キャラクター)を右下のネコのブロックから追加します。

キーパーは、「Casey」を選択します。

Scratch プログラミング(30)

 

ボールは、「Soccer Ball」を選択します。

Scratch プログラミング(32)

 

すると、画面はこのようになります。

Scratch プログラミング(33)

キーパーとボールがあらわれた!

 

アルくん
アルくん
ここからは、キーパーとボールのコードを選択して、動きをつけていくよ。
アルくん
アルくん
まずは、キーパーから。

ここでは、「緑の旗が押されたとき、キーパーが左右方向に動きつづける」ようにします。

キーパーのスプライトを選択し、ブロックを以下の画面のとおり並べます。

Scratch プログラミング(34)

なにこれ…、いきなり難しい。
アルくん
アルくん
大丈夫!一つ一つの意味が分かれば、そんなに難しくはないよ。
アルくん
アルくん
並べたブロックの意味を解説するね。
  • 90度に向ける」:方向に動かしたいときに使う
  • 回転方向を左右のみにする」:キーパー自身が回転しないようにする
  • 大きさを80%にする」:ゴールの大きさに合わせて、キーパーを小さくする
  • ずっと」、「10歩動かす」、「もし端についたら跳ね返る」:端についたら跳ね返り、左右に動き続けるようにする
アルくん
アルくん
これでキーパーのプログラムは完成!
アルくん
アルくん
緑の旗を押すと、「キーパーが左右に自動で動くこと」を確認できるよ。
Scratch プログラミング(40)

すごい!キーパーがずっと動いてる!

 

アルくん
アルくん
次は、ボールのプログラムを作っていくよ。
Scratch プログラミング(33)

ここでは、次の4つができるようにします。

  1. 緑の旗が押されたとき、ボールを所定の位置に置く
  2. ボールを押した(クリック)とき、ゴールの方へ動くようにする
  3. キーパーに触れたら「ざんねん!」と言う
  4. ゴールまで届いたら、「ゴール!」と言う

 

そのために、ボールのスプライトを選択し、ブロックを以下の画面のように並べます。

Scratch プログラミング(35)

キーパーのときよりたくさんある…、やっぱり難しそう。
アルくん
アルくん
一つ一つは簡単なコードだよ。一緒に確認してみよう。

まずは、「緑の旗を押したとき」から解説します。

Scratch プログラミング(41)
  • 「X座標を0、Y座標を-125にする」:ボールを所定の位置に置く
  • 「0度に向ける」:ボールを上方向に動かしたいときに使う

緑の旗を押すと、ボールが所定の位置にいくことを確認できますよ。

ボールがゴールの下に移動した!

 

スクラッチでは、X座標とY座標を指定することで、場所を指定することができます。

右下のX座標とY座標を変えれば、どの値でどこの場所になるかを確認できますよ。

Scratch プログラミング(39)

XとYの数字を変えれば、ボールの場所が変わるんだね。
アルくん
アルくん
そのとおり!XとYの場所を変えれば、好きな位置にボールを置くことができるよ。
アルくん
アルくん
これでサッカーボールをける前の場所が決まったね。

うん!ここまでできたよ。

 

アルくん
アルくん
次は、サッカーボールを押したときに、サッカーボールがゴールの方へ動くようにしよう
アルくん
アルくん
このとき、キーパーに取られたら「ざんねん!」、ゴールできたら「ゴール!」とでてきたらおもしろくない?

うん、ゲームっぽくなってきたね!

ここでは、「このスクリプトが押されたとき」からを解説します。

Scratch プログラミング(42)
  • 「ずっと」「10歩動かす」:ボールをゴールの方へ動かし続ける
  • 「もしCaseyに触れたなら」「ざんねん!と2秒言う」「すべてを止める」:ボールがキーパーに触れたら「ざんねん!」と表示され、すべてを止める
  • 「もし端に触れたなら」「ゴール!と2秒言う」「すべてを止める」:ボールが端に触れたら「ゴール!」と表示され、すべてを止める

緑の旗を押したあとに、ボールを押すと、すべての動きを確認することができます。

 

ボールがキーパーに触れたら、「ざんねん!」と表示されます。

 

ボールが端までいくと、「ゴール!」と表示されますよ。

アルくん
アルくん
これで完成だよ!

やったー!サッカーゲームを作れた!

 

簡単サッカーゲーム②|ボールとキッカーとキーパー

Scratch プログラミング(45)
アルくん
アルくん
今度は、「ネコ」をキッカーにした、簡単サッカーゲーム②の作り方を教えるよ。

サッカーならキッカーは必要だよね。

簡単ゲーム②は次のように作ることにします。

  1. 緑の旗を押すと、キーパーが上下に動き続ける、ネコとボールが所定の位置にいく
  2. ネコを押すと、ネコがボールの方へ動く
  3. ネコがボールに触れると、ボールが右に動く
  4. キーパーに当たると、「ざんねん!」と言う
  5. ボールが右端に当たると、「ゴール!」と言う

 

ここでは、競技場(Playing Field)の風景を選びました。

Scratch プログラミング(3)

次に、サッカーボールとキーパー(Casey)のスプライトを追加します。

Scratch プログラミング(4) Scratch プログラミング(5)

 

すると、画面は次のようになりました。

Scratch プログラミング(6)

今度は公園でサッカーしてるみたいだね。

 

アルくん
アルくん
今回は、キーパーが【上下方向に自動で動く】ようにするよ。
アルくん
アルくん
まずは、キーパーから動きをつけていこう。

まずは、キーパーのスプライトを選択し、ブロックを以下の画面のとおり並べます。

Scratch プログラミング(25)
アルくん
アルくん
並べたブロックの意味を説明するね。
  • 「180度に向ける」:キーパーを下方向に動かすときに使う
  • 「回転方向を左右のみにする」:キーパーが回転しないようにする
  • 「大きさを80%にする」:ボールに合わせてキーパーを小さくする
  • 「ずっと」「10歩動かす」「もし端に着いたら、跳ね返る」:端についたら跳ね返り、上下に動き続けるようにする

ゲーム①とちがうのは、「180度に向ける」だけだね。
アルくん
アルくん
そのとおり!よく気づいたね。

緑の旗を押して実行すると、「キーパーが上下に自動で動くこと」を確認できます。

Scratch プログラミング(50)

 

アルくん
アルくん
次はネコに動きをつけていこう。

ネコの動きは、次のようにします。

  1. 旗を押すと、所定の場所(X座標:-50,Y座標:0)に移動する
  2. ネコをクリックすると、ボール(X座標:0,Y座標:0)まで走る
  3. ボールまで走ったら、シュートする

この動きをさせるためにブロックは次のように並べます。

Scratch プログラミング(26)
アルくん
アルくん
並べたブロックの意味を説明するね。

旗が押されたとき

  • 「X座標を-80,Y座標を0にする」:ネコを所定の位置におく

 

このスプライトが押されたとき

  • 1秒でX座標を0に、y座標を0に変える
  • シュートを送る

ここでは、ネコがボールに触れたらボールを動かすために「シュートを送る」というブロックを使っています。

ボールのコードで、「シュートを受け取ったとき」というブロックを使うと、ネコにボールが触れたと同時にボールを動かすことができますよ。

 

緑の旗を押して実行すると、ネコがボールまで走りますよ。

Scratch プログラミング(51)
アルくん
アルくん
ここでは、ネコの最初の場所とボールまで走るときの場所を決めて動かしたんだよ。

あれ?でもボールが動かないよ。
アルくん
アルくん
ボールは、ボールのプログラムを作らないと動かないんだ。

 

アルくん
アルくん
では、ボールの動きをつけていくよ。

ここでは、「ネコがボールに触れたとき、ボールが右方向に動く」ようにします。

ボールのスクリプトを選択し、コードを次のように並べます。

Scratch プログラミング(27)

ゲーム①のボールのコードと似ているね。
アルくん
アルくん
よく気づいたね。では、並べたブロックを説明するよ。
Scratch プログラミング(46) Scratch プログラミング(47)
  • 「X座標を42、y座標を-33にする」:所定の位置にボールを置く
  • 「90度に向ける」:ボールを右方向に動かしたいときに使う
  • 「シュートを受け取った時」:ネコがボールに触れたとき

あとは、簡単ゲーム①と同じように、キーパーに触れると「ざんねん!」、画面右端に無事たどり着くと「ゴール!」と判定されるようにブロックを並べています。

 

キーパーに止められたところ

Scratch プログラミング(49)

ゴールが決まったところ

Scratch プログラミング(48)
アルくん
アルくん
これで完成だよ!
アルくん
アルくん
さあ、キーパーの動きをみて、タイミングよくネコをクリックしてみよう!

 

他にも、【簡単アクションゲームの作り方】・【簡単シューティングゲーム】の作り方を紹介していますので、参考にしてください。

アクションゲーム作り方14
Scratchを使った【簡単アクションゲーム】の作り方|横スクロールしてアイテムを取る方法Scratchでの簡単なアクションゲームの作り方についてご紹介しています。シンプルなゲームに比べ、アクションゲームの作成はちょっと難しくなりますが、背景の設定方法やジャンプの仕方、ゴールの設定方法やクリア画面の作り方についてなどをおさえて自分なりのアクションゲームを作ってみましょう。...
Scratch シューティングゲーム作り方8
Scratchを使った【簡単シューティングゲーム】の作り方|自機・敵・弾の動きを作ろうScratchで簡単に自分でできるシューティングゲームの作り方についてご紹介しています。自分や敵キャラの動かし方など基本的なものをおさえて、自分だけのオリジナルゲームを作成してみましょう。また応用編としてライフの設定や音楽やBGMをつけたりと、より本格的なシューティングゲームを作って楽しみましょう!...

 

Scratch(スクラッチ)のプログラミング例【動画】

Scratch プログラミング(12)

今度は、動画でScratchのプログラミング例を紹介します。

簡単な【シューティングゲーム】の作り方を動画にしました。

【サルが飛んでくるボールに当たらないように逃げるゲーム】です。

 

4本の動画に分けて、解説します。

1本目:【背景とキャラクター選び】を解説

 

 

2本目:【矢印キーでサルを上下に動かす】を解説

 

3本目:【ボールが地球からサルに飛んでいく】を解説

 

4本目:【ボールがはしに当たったら地球に戻る・サルに当たったらゲーム終了】を解説

 

こちらは、初心者でも簡単に作れるシューティングゲームです。

動画を参考に作ってみてください。

 

スクラッチをプログラミング教室でやってみよう

Scratch プログラミング(13)

今回の例で作成したサッカーゲーム1つとっても、作っているうちにさらなる改善点や要望がみえてくることでしょう。

例えば、次のようにすれば、もっとおもしろいゲームになりますよね。

  • ネコにしゃべらせる
  • 効果音や音楽をつける
  • キーパーの動きを遅くする
  • ボールのスピードを調整する

自分の作品を良くしたい欲求が次々に生まれてくること、これこそがスクラッチの醍醐味といえます

アルスクールキッズのスクラッチ作品例

キッズプログラミング教室【アルスクールでは、スクラッチのレッスンを行っています。

通っている子たちのスクラッチ作品を紹介します。

どれも自分で考えて作った作品ですよ。

 

弾をよけろ(小4男の子)
ボスのエネルギーはなくなるまで矢印キーでよけ続けよう

>>中のコードを見てみる

 

なののフルーツ集あつめ(小5女の子)
矢印キーを動かしてフルーツをたくさん集めよう

>>中のコードを見てみる

 

サッカー PKゲーム(小4男の子)
aキーを押せば男の子、bキーを押せば女の子。
スペースキーを押して、1を押せば右に 2を押せば左 3を押せば真ん中に行くよ。

>>中のコードを見てみる

 

アルスクールでは、子供たちの興味や好奇心を大切に、レッスンを進めています。

オリジナルゲームを作成したり、電子工作をしたりと、子ども達は主体的に楽しく学んでいます。

プログラミング作品

アルスクールでは、【無料体験レッスン】を随時実施しています。

オンライン体験レッスンも随時行っています。(対象:小学2年生~小学6年生)

オンライン体験会 (1)
【オンライン体験レッスン】を開催!プログラミングレッスンの内容と子供たちの反応新型コロナウイルスの影響で、アルスクールもレッスンのオンライン化への切り替えを進めることにしました。そこで、先行してお問い合わせいただいた方にオンラインでの体験レッスンを開催しました。今回は、体験レッスンの内容や参加してくれた子ども達の反応について詳しく紹介します。...
オンラインレッスン小3~小6(24)
小2~小6向けオンラインレッスン|創造性を伸ばすプログラミング授業小2~小6向けに、オンラインのプログラミングレッスンを始めました。レベルは様々ですが、少人数制で、一人ひとりのペースに合わせたレッスンを行っています。つくった作品をみんなの前で発表するなどして、お互いに良い刺激を受けられるレッスンをしています。...

ぜひ一度、アルスクールの学びを体験してみてください。

オンライン体験レッスン>> 【オンライン無料体験レッスン】詳しくはこちら

無料体験レッスン

キッズプログラミング教室【アルスクール】では、自由が丘校・中野校・中野TCS校・恵比寿校・福岡西新校・オンライン校で、プログラミングレッスンを行っています。

通常レッスンに参加できる無料体験レッスンは、随時開催しています。

無料体験レッスンを詳しくみる