まっつん総研連絡用ブログ

プログラミング教育とかMSXとか。

実習室で使っている教材:Microsoft MakeCode Arcade

 プログラミング実習室で使っていたり、要望があれば使えるようにしている教材のうち、MakeCode Arcadeについて書いてみます。

※「子ども向けプログラミング環境にはどのようなものがあるか」、また「そのプログラミング環境がどのようなものであるか」については、既にネットに情報があふれていますので、あくまで身の周りでどのように使っているかを書いています。

f:id:matsun-ri:20220123003917j:plain
MakeCode Arcadeの編集画面

目次

概要

 Microsoft MakeCodeは、コンピュータソフトウェアの大手であるマイクロソフトが提供しているプログラミング学習のためのプラットフォームで、7種類のプログラミング環境が用意されています。
 MakeCode Arcadeはその中の一つであり、いわゆるレトロゲームのようなプログラムを作ることを得意としています。

f:id:matsun-ri:20220123003951j:plain
MakeCode Arcadeの実行画面

 想定されている画面の解像度は160×128ドットです。
 いにしえのゲームボーイカラーの画面解像度が160×144なので、だいたい同じくらいです。

 キーボードやプログラミングに慣れていない場合は、マウスを使ったブロックプログラミングによってゲームが作れます。
 ブロックプログラミングに対応している点は、Scratchで育った子どもへの訴求力があるでしょう。

 教本は『10才からはじめるプログラミング MakeCode Arcadeで自分だけのゲームを作ろう』技術評論社)がおすすめです。
 先程の画面のシューティングゲームは、本を参考に、すぐに作れました(写経*1ではありません)。
 いにしえの80年代には、パソコン雑誌に掲載されている読者投稿プログラムを手で入力しながらノウハウを覚えた方もたくさんいらっしゃると思いますが、そういった雑誌数ヶ月分の効果がありそうです。

 キーボードを使えば、プロが使っているJavaScriptPythonといった本格的なプログラミング言語でゲームが作れます。
 また、マウスで作ったプログラムを、JavaScriptPythonに変換することができます。

f:id:matsun-ri:20220123004034j:plain
ブロックをJavaScriptに変換

 ブロックで作ったプログラムをJavaScriptに変換すると、JavaScriptを使いこなせるような気がするかもしれませんね。……というのは極端としても、ブロックとテキストの類似性に気づいてもらうことができそうです。

実行環境

 MakeCode Arcadeで作ったプログラムは、画面上で実行できるほか、URLをスマホに送ることで、スマホのブラウザ上でそのまま遊べます。

 さらには、別途販売されている専用のハンディゲーム機で動作させることができます。
 実機は、MakeCode Arcadeの世界では『コンソール』と呼ばれ、複数種類存在します。

f:id:matsun-ri:20220123004114j:plain
Meowbit

 写真は Meowbitという製品です。
 上下左右とABの各ボタンがあります。
 別売のリチウムイオンバッテリーは買っていないので、携帯機ながらUSBケーブルによる電源供給が必要な状態です。
 また、micro:bitとのピン互換があり、おそらくMakeCode Arcadeのコンソールとして以外にも多用途に対応できるよう作られているようです(が、使いこなせていません)。

 ブラウザ上のMakeCode Arcadeだときちんと動くプログラムでも、作りこみが甘いと、実機で動かしたときに重くなったり、メモリ不足で落ちたりすることがあります。バーチャルと実機の違いを理解することにつながりそうです。

 自分でゲームを作ったら、ゲーム専用機で動いているところを見たくなるのではないでしょうか。この点も訴求力があると思われます。*2

f:id:matsun-ri:20220123004146j:plain
Meowbitの箱

 Meowbitの箱です。

f:id:matsun-ri:20220123004212j:plain
「いやー さがしましたよ。」

 パッケージに、わりとのんきものの王子様っぽい御仁が描かれているのも愛嬌です。

 MakeCode Arcadeをはじめるには、対応ブラウザでMakeCodeの公式ウェブサイトにアクセスし、「Arcadeでプログラミングを始める」をクリックします。
www.microsoft.com

サンプルコード

 MakeCode Arcadeで作ってみたシューティングゲームです。
 ぜひ、エミュレータとコンソール(実機)の両方でお試しください。エミュレータだと不具合が起こらない場合でも、コンソールだと処理落ちする様子が見られるはずです。

https://arcade.makecode.com/58175-10484-36220-55752

*1:本やサイトに記載されているソースコードを愚直に入力すること。

*2:もっとも、今ではSwitchでゲームを開発できるソフトが複数揃っており、いい時代です。