Scratch

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

Scratch プログラミング(9)

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

Scratch」という名前を聞いたことはありますか?

最近、プログラミング学習業界で話題になっている言語です。

小学校のプログラミング教育でもすでに使われています。

 

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

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

アルくん
アルくん
Scratchは、小学生でも簡単なゲームやストーリーなど作れるので興味を持ちやすいですよ。

ゲーム!作ってみたい!

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

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

アルスクールの公式キャラクター「アルくん」と一緒に解説していきますね。

>> 【入会金無料キャンペーン】実施中!アルスクールでScratchを学ぼう

 

Scratchというプログラミング言語

Screenshot of scratch.mit.edu

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

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

Scratchは、これまでバージョン1.4、2.0が開発されており、現在では最新版のバージョン3.0が利用可能です。

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

Scratch プログラミング(1)

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

 

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

 

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

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

ママ
ママ
創造力はこれからの時代に大切って聞いたことがあるわ。
アルくん
アルくん
創造的な学びをするのに、Scratchはおすすめですよ。

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

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

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

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

参照:media.mit.edu

 

「Scratch」は、より高度なプログラミング言語への橋渡しに最適であり、プログラミング初心者にとってまさに理想的な言語だといえるでしょう

 

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

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

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

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

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

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

ビジュアルプログラミングの場合、アイコンと呼ばれる図形を配置することでコンピュータへの指示を表現します。

そのため、直観的に動作を理解しやすいことがメリットです。

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

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

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

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

 

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

2020年度からスタートする教育改革の一環として、小学校でもプログラミング教育学習が開始されます。

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

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

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

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

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

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

 

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

Screenshot of scratch.mit.edu

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

 

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

Scratch プログラミング(1)

>>Scratchをオンラインで使用する

 

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

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

>>Scratch公式サイトでダウンロード

 

また、作ったプログラムを世界中のユーザーとシェア出来るのも「Scratch」の魅力のひとつです。

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

>> 【入会金無料キャンペーン】実施中!アルスクールでScratchを学ぼう

 

Scratchの使い方

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度に向ける」:ボールを上方向に動かしたいときに使う

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

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

 

Scratchでは、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をやってみた感想

Scratch プログラミング(12)

プログラミング初心者のアルスクール事務スタッフが、Scratchをやってみました!

やってみた感想は「とにかく分かりやすく、簡単にプログラミングが楽しめる!」でした。

初心者は最初の時点でつまずきやすいため、プログラミング学習を始める教材として最適といえます

 

また、他の入門用ビジュアルプログラミング教材、たとえば「Viscuit」と比べると、できることが圧倒的に多く、長く楽しめる印象があります。

 

さらに、自作のプログラムを世界中に公開して他のユーザーとシェアできるのも魅力です。

>>Scratch公式サイトで作品をシェア

感想を言い合ったり、作品をもっとよくするためのアドバイスをもらったり、二次作品を進化させたり、ユーザー同士で相互交流する楽しみもあります。

 

Scratchはまさに現代にアップデートされた教材といえるでしょう。

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

 

Scratchをプログラミング教室でやってみよう

Scratch プログラミング(13)

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

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

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

自分の作品を良くしたい欲求が次々に生まれてくること、これこそがScratchプログラミングの醍醐味といえます

 

キッズプログラミング教室【アルスクールでは、5月よりオンラインレッスンを始めました

オンラインレッスンの内容・子ども達の反応については、こちらの記事をご覧ください。

オンラインレッスン小1小2 (15)
小1・小2のオンラインレッスンを始めました!Scratchで楽しく学ぼう5月よりオンラインレッスンを開講しました! 小1・小2の新規の子は、アルスクールの在校生とは別の日程でレッスンをしています。そして、少人数制で、一人ひとりのペースに合わせたレッスンを行っています。レッスン内容・子ども達の反応について詳しく紹介します。...
オンラインレッスン小3~小6(24)
小3・小4・小5・小6向けオンラインレッスン|創造性を伸ばすプログラミング授業小3・小4・小5・小6向けに、オンラインのプログラミングレッスンを始めました。レベルは様々ですが、少人数制で、一人ひとりのペースに合わせたレッスンを行っています。つくった作品をみんなの前で発表するなどして、お互いに良い刺激を受けられるレッスンをしています。...

 

そして、オンラインレッスンの前に、新規のお子様には、無料体験会に参加していただいています。

先日行った無料オンライン体験会の様子はこちらをご覧ください。

オンライン体験会 (1)
【オンライン体験会】を開催!体験会の内容と子供たちの反応新型コロナウイルスの影響で、アルスクールもレッスンのオンライン化への切り替えを進めることにしました。そこで、先行してお問い合わせいただいた方にオンラインでの体験会を開催しました。今回は、体験会の内容や参加してくれた子ども達の反応について詳しく紹介します。...

また、6月より自由が丘校も再開しており、教室での無料体験会も開催中です。

入会金無料キャンペーン7月

キッズプログラミング教室【アルスクール】では、5月よりオンライン校を開講しました。

それにあたって、入会金無料キャンペーンを行います!

オンライン校・自由が丘校のどちらでも、通常10,000円の入会金が無料になります。

入会金無料キャンペーンは7月末までの期間限定です。

この機会に、無料体験会に参加して、アルスクールの学びを体験してみませんか。

オンライン校・自由が丘校ともに、無料体験会を随時開催中です。

詳しくはこちらをご覧ください。

入会金無料キャンペーンの詳細はこちら