ハロー・ワールド!おもちゃ大好きエンジニアの大之助( @daivoy_x)です!
ゲームプログラミングを初心者でも簡単にできるMOONBlockをご存知でしょうか?
MOONBlockはゲームに特化したプログラミングソフトで、ブロックを組み立てるようにプログラムを作ることができます。
なので、ゲームでおなじみのスコア表示やゲームオーバーの文字を表示することが簡単にできますよ。
というわけで本記事では「MOONBlock」とはなにか?から、使い方や考え方、作れるプログラムについてエンジニア目線で紹介していきます!
- 完全無料
- ゲームプログラミングに特化
- ブロック→テキストに変換可能
- 作品の共有が可能
- 使い方の説明がない
- デバッグがしにくい
- 関数が使えない
- プログラムの編集画面を分割不可
MOONBlockとは?MOONBlockの基本情報
「MOONBlock」とはゲームを作ることに特化しているプログラミングソフトです。
商品名 | MOONBlock |
メーカー | UEI Corp. |
ブランド | - |
希望小売価格(税込) | 無料 |
対象年齢 | 記載なし |
可能な基本処理 | 順次/分岐/反復 |
教材 | なし |
デバイス | パソコン | 【オフライン】不可 【オンライン】ブラウザ |
タブレット | 【オフライン】不可 【オンライン】ブラウザ |
|
スマホ | 【オフライン】不可 【オンライン】ブラウザ |
|
ブラウザ | Google Chrome/Microsoft Edge/Firefox/Safari (上記は簡易動作確認済み) |
|
インターネット接続 | 常に必須 | |
プログラミング方法 | ビジュアルプログラミング(ブロックを組み立てるタイプ) | |
プログラミングソフト | MOONBlock | |
プログラミング言語 | オリジナル(JavaScriptに変換可能) | |
作れるプログラム | ゲーム |
この教材でできること
できることは下記のような「ゲームを作るプログラミング」です。
- スコアを表示するプログラミング
- タイムカウントをするプログラミング
- 敵を出現させるプログラミング
- 敵を倒すプログラミング
一般的なゲームに登場する機能を手軽に作ることができますよ。
この教材で遊ぶときの環境
この教材で遊ぶときはWEBブラウザを使ってオンラインでプログラミングします。
▼オフライン:アプリをダウンロードして遊ぶ場合:不可
▼オンライン:公式サイトにアクセスして遊ぶ場合
MOONBlockの使い方
早速、どんな感じでプログラム作るのか紹介しますね。
画面構成~画面の見方を知ろう!~
まず、画面構成はこんな感じで、3つのエリアに分かれています。
上の方には命令ブロックのメニューが10種類あります。横にスクロールすると全部見えます。
メニューをクリックすると詳しい「命令ブロック」があります。この命令ブロックをつなげてプログラムを作ります。
中央が「編集」エリアです。ここにブロックを置いてプログラムを作ります。
右上には「プログラムの実行結果」が表示されます。作ったプログラムを実行するとここでゲームが動きます。
プログラミングの基本的な考え方を理解しよう!
MOONBlockの基本的な考え方は「パペット(イラスト)を動かすためにプログラミングする」ということです。これを認識しておくとMOONBlockを理解しやすくなります。
例えば主人公が敵を倒すゲームを作ろうと思ったら、主人公と敵のパペットを追加して、それぞれの動きをプログラミングします。
主人公は画面をタップしたところに移動するプログラムを作ります。
一方、敵は上からたくさん出てきて、主人公とぶつかると消えるプログラムを作ります。
これらのプログラムを同時に実行することで主人公が敵を倒すゲームを作ることができます。
デメリット
私が感じたデメリットは次のとおりです。
- 使い方の説明が無い
- デバッグがしにくい
- 関数が使えない
- 編集画面を分けることができない
詳しく解説します。
使い方の説明が無い
使い方の説明が一切無いので初心者にはハードルが高いです。
ScratchやMakeCodeには教材にあたるチュートリアルが少しあったので遊びやすかったんですけどね…
デバッグがしにくい
デバッグとはプログラムの不具合(バグ)を取り除く作業です。
他のプログラミングソフトだと、プログラムを実行するときに1行ずつ(1命令ずつ)実行することができますが、MOONBlockは1行ずつ(1命令ずつ)実行することができません。
関数が使えない
自分でオリジナルの命令ブロック(関数)を作る機能がありません。
関数はプログラミングの基本なのでそれが使えないのはちょっと残念です。
編集画面を分けることができない
一つの編集画面にすべてのプログラムを作るので、プログラムが複雑になると一つの編集画面にたくさんの命令ブロックが並びます。
プログラムが複雑になればなるほどわかりにくくなって、不具合を混入させる確率が高まるのはデメリットですね~。
メリット
私がエンジニア目線でいいなと思ったところは次のとおりです。
- ゲームに特化している
- ブロック→テキストに変換可能
- 作品の共有が可能
それぞれ解説します。
ゲームに特化している
MOONBlockはゲームプログラミングに特化しているので、ゲームでおなじみの機能が作りやすいです。
例えば、スコア表示や制限時間設定などは専用の命令ブロックが用意されているので、それをそのまま使えば実現できます。
ブロック→テキストに変換可能
MOONBlockはビジュアル(ブロック)プログラミングで作ったプログラムをテキスト(JavaScript)のプログラムに変換できます。
画面左下の[ソース]をクリックするとJavaScriptのソースコードが表示されます。
拡大するとこんな感じです。
作品の共有が可能
MOONBlockで作った作品を共有することができますし、他人が作った作品を遊ぶことができます。
左下の[セーブ]をクリックするとQRコードと作品のURLが表示されます。
このQRコードを読み取るか作品のURLにアクセスすると他人が作った作品を遊ぶことができます。
MOONBlockをおすすめできる人
「MOONBlock」は一般的なゲームを作ってみたいお子さんにおすすめです。
ゲームに特化しているプログラミングソフトなだけあって、ゲームによくある動きや機能が作りやすいです。
ただ、使い方の説明が無かったり、プログラミングの自由度があまり高くないので、個人的にはScratchでゲームを作るほうがいいかなと。
Scratchなら書籍やネットの情報も多いので。
結論:MOONBlockでゲームプログラミングをやってみるのはあり
本記事は「MOONBlock」をエンジニア目線で紹介しました。
作れるプログラムの幅はScratchの方が広いので、ゲームを作るにしてもScratchの方が良さそうとは思いつつ、簡単にゲームを作れるのはMOONBlockならではです。
これからの時代、プログラミングは必須スキルです。ぜひ、お子さんが子供の頃からプログラミングを体験させてあげてくださいね。
- 完全無料
- ゲームプログラミングに特化
- ブロック→テキストに変換可能
- 作品の共有が可能
- 使い方の説明がない
- デバッグがしにくい
- 関数が使えない
- プログラムの編集画面を分割不可
▼おすすめプログラミングおもちゃまとめ(年齢別)