【ゲーム開発】MOONBlockの使い方や考え方を詳しく解説

【ゲーム開発】MOONBlockの使い方や考え方を詳しく解説

※当サイトには広告が掲載されています。ご了承くださいm(_ _)m

ハロー・ワールド!おもちゃ大好きエンジニアの大之助( @daivoy_x)です!

ゲームプログラミングを初心者でも簡単にできるMOONBlockムーンブロックをご存知でしょうか?

MOONBlockはゲームに特化したプログラミングソフトで、ブロックを組み立てるようにプログラムを作ることができます。

なので、ゲームでおなじみのスコア表示ゲームオーバーの文字を表示することが簡単にできますよ。

というわけで本記事では「MOONBlockムーンブロックとはなにか?から、使い方考え方作れるプログラムについてエンジニア目線で紹介していきます!

メリット デメリット
完全無料 使い方の説明がない
ゲームプログラミングに特化 デバッグがしにくい
ブロック→テキストに変換可能 関数が使えない
作品の共有が可能 プログラムの編集画面を分けることができない
参考サイト:MOONBlock公式サイト
スポンサーリンク

MOONBlockとは?MOONBlockの基本情報

MOONBlockムーンブロック」とはゲームを作ることに特化しているプログラミングソフトです。

商品名 MOONBlockムーンブロック
メーカー UEI Corp.
ブランド -
希望小売価格(税込) 無料
対象年齢 記載なし
可能な基本処理 順次/分岐/反復
教材 なし
デバイス パソコン 【オフライン】不可
【オンライン】ブラウザ
タブレット 【オフライン】不可
【オンライン】ブラウザ
スマホ 【オフライン】不可
【オンライン】ブラウザ
ブラウザ Google Chrome/Microsoft Edge/Firefox/Safari
(上記は簡易動作確認済み)
インターネット接続 常に必須
プログラミング方法 ビジュアルプログラミング(ブロックを組み立てるタイプ)
プログラミングソフト MOONBlock
プログラミング言語 オリジナル(JavaScriptに変換可能)
作れるプログラム ゲーム

この教材でできること

できることは下記のような「ゲームを作るプログラミング」です。

  • スコアを表示するプログラミング
  • タイムカウントをするプログラミング
  • 敵を出現させるプログラミング
  • 敵を倒すプログラミング

一般的なゲームに登場する機能を手軽に作ることができますよ。

この教材で遊ぶときの環境

この教材で遊ぶときはWEBブラウザを使ってオンラインでプログラミングします。

▼オフライン:アプリをダウンロードして遊ぶ場合:不可

▼オンライン:公式サイトにアクセスして遊ぶ場合

オフラインで使えないのはちょっと残念ですね。

MOONBlockの使い方

早速、どんな感じでプログラム作るのか紹介しますね。

画面構成~画面の見方を知ろう!~

まず、画面構成はこんな感じで、3つのエリアに分かれています。

上の方には命令ブロックのメニューが10種類あります。横にスクロールすると全部見えます。

メニューをクリックすると詳しい「命令ブロック」があります。この命令ブロックをつなげてプログラムを作ります。

ブロックの形をみればどこにくっつければいいかわかるようになっています。

中央が「編集」エリアです。ここにブロックを置いてプログラムを作ります。

右上には「プログラムの実行結果」が表示されます。作ったプログラムを実行するとここでゲームが動きます。

プログラムを作ったらすぐにプログラムを実行してプログラムの確認ができるのは便利でいいですね。

プログラミングの基本的な考え方を理解しよう!

MOONBlockの基本的な考え方は「パペット(イラスト)を動かすためにプログラミングする」ということです。これを認識しておくとMOONBlockを理解しやすくなります。

MOONBlockではプログラミング対象のキャラクターなどをパペット(あやつり人形)と呼びます。

例えば主人公が敵を倒すゲームを作ろうと思ったら、主人公と敵のパペットを追加して、それぞれの動きをプログラミングします。

主人公は画面をタップしたところに移動するプログラムを作ります。

一方、敵は上からたくさん出てきて、主人公とぶつかると消えるプログラムを作ります。

あとはスコア表示や制限時間を設けるとそれっぽくなります。

これらのプログラムを同時に実行することで主人公が敵を倒すゲームを作ることができます。

パペットそれぞれをプログラミングするという考え方はプログラムを作るときにわかりやすいですね。Scratchに似ています。

デメリット

私が感じたデメリットは次のとおりです。

  • 使い方の説明が無い
  • デバッグがしにくい
  • 関数が使えない
  • 編集画面を分けることができない

詳しく解説します。

使い方の説明が無い

使い方の説明が一切無いので初心者にはハードルが高いです。

ただ、別売りの書籍はあるみたいです。

ScratchMakeCodeには教材にあたるチュートリアルが少しあったので遊びやすかったんですけどね…

ネットには少しだけ情報がありましたので、頑張って調べたらなんとか使い方がわかるかなと言う感じです。

デバッグがしにくい

デバッグとはプログラムの不具合(バグ)を取り除く作業です。

プログラムのどこが悪いかなぁ~と考える作業とも言えます。

他のプログラミングソフトだと、プログラムを実行するときに1行ずつ(1命令ずつ)実行することができますが、MOONBlockは1行ずつ(1命令ずつ)実行することができません

なので、何行目までは想定通りの動きで、何行目以降は想定通りの動きじゃないのか探しにくいです。

関数が使えない

自分でオリジナルの命令ブロック(関数)を作る機能がありません

ScratchMakeCodeは使えるんですけどね~

関数はプログラミングの基本なのでそれが使えないのはちょっと残念です。

編集画面を分けることができない

一つの編集画面にすべてのプログラムを作るので、プログラムが複雑になると一つの編集画面にたくさんの命令ブロックが並びます

Scratchはスプライト(イラスト)別に編集画面が切り替わるので、まだわかりやすいです。

プログラムが複雑になればなるほどわかりにくくなって、不具合を混入させる確率が高まるのはデメリットですね~。

メリット

私がエンジニア目線でいいなと思ったところは次のとおりです。

  • ゲームに特化している
  • ブロック→テキストに変換可能
  • 作品の共有が可能

それぞれ解説します。

ゲームに特化している

MOONBlockはゲームプログラミングに特化しているので、ゲームでおなじみの機能が作りやすいです。

例えば、スコア表示や制限時間設定などは専用の命令ブロックが用意されているので、それをそのまま使えば実現できます。

他にも敵が画面の上からどんどん出てくるような命令ブロックや敵が爆発するアニメーションなど、ゲームによくある動作はプログラミングしやすくなっているのはいいですよ。

ブロック→テキストに変換可能

MOONBlockはビジュアル(ブロック)プログラミングで作ったプログラムをテキスト(JavaScriptジャバスクリプト)のプログラムに変換できます

JavaScript→ブロックはできません。

画面左下の[ソース]をクリックするとJavaScriptのソースコードが表示されます。

拡大するとこんな感じです。

JavaScriptはエンジニアが使っているプログラミング言語なので、将来のために触れておいて損は無いですよ。

作品の共有が可能

MOONBlockで作った作品を共有することができますし、他人が作った作品を遊ぶことができます

左下の[セーブ]をクリックするとQRコードと作品のURLが表示されます。

 本記事の説明に使用したプログラムはこちら(音量注意です)

このQRコードを読み取るか作品のURLにアクセスすると他人が作った作品を遊ぶことができます。

他人のプログラムを「開く→編集→保存」しても違う作品として保存されます。上記の作品を自由に編集しても上書きされることは無いので安心して改造していいですよ。

MOONBlockをおすすめできる人

MOONBlockムーンブロック」は一般的なゲームを作ってみたいお子さんにおすすめです。

ゲームに特化しているプログラミングソフトなだけあって、ゲームによくある動きや機能が作りやすいです。

親しみのあるゲームを作るところからプログラミング学習を始めるとモチベーションが上がって良さそうです。

ただ、使い方の説明が無かったり、プログラミングの自由度があまり高くないので、個人的にはScratchでゲームを作るほうがいいかなと。

Scratchなら書籍やネットの情報も多いので。

結論:MOONBlockでゲームプログラミングをやってみるのはあり

本記事は「MOONBlockムーンブロック」をエンジニア目線で紹介しました。

作れるプログラムの幅はScratchの方が広いので、ゲームを作るにしてもScratchの方が良さそうとは思いつつ、簡単にゲームを作れるのはMOONBlockならではです。

まずはMOONBlockでゲームプログラミングを始めてプログラミングの楽しさがわかってきたらScratchや他のプログラミングツールに移行するのもありかなと。

お子さんが大きくなるのはあっという間です。
「チャンスを活かせる者は決してチャンスを逃さない」ですよ。

メリット デメリット
完全無料 使い方の説明がない
ゲームプログラミングに特化 デバッグがしにくい
ブロック→テキストに変換可能 関数が使えない
作品の共有が可能 プログラムの編集画面を分けることができない
タイトルとURLをコピーしました