ScratchプログラミングでMinecraft一級建築士を目指せ!:マイクラで始めるプログラミング入門(終)(2/2 ページ)
本連載では、子どもたちに大人気のゲーム「Minecraft」を題材にYouTube実況動画付きで「プログラミング」を学んでいく。最終回は、ブロックを積み上げたり消したりしていろいろな形を作るプログラミングの仕方を動画で解説する。これを学ぶことで建物や町、景観などをMinecraft上に再現するヒントにしてほしい。
画像スキャナープログラムを利用してブロックで絵や文字を作ってみる
続いて、Scratch2MCPIに付属している画像スキャナーのプログラム「mcpi_stagescanner」を利用して、ブロックで絵や文字を作ってみる。
Scratchの「ファイル」→「開く」→「私のプロジェクト」→「mcpi_stagescanner」とたどって、mcpi_stagescannerプロジェクトを読み込む。このプログラムは、Scratchの背景に指定された画像をスキャンして、その背景に指定されている絵や文字を、ブロックで作っていくものだ。
今回は、「mcpi-stagescanner」に付属する「お化け」のキャラクターや「MINECRAFT」という文字の画像を、Windows PCの画像処理ソフトで作成して、PNG画像として保存し、これらを「Scratch2MCPI」の背景画像として読み込み、プログラムを実行してみた。
背景に「MINECRAFT」と書いた文字(文字の画像)を表示して、それをスキャンして、Minecraft Piの世界に、その文字通りのブロックを配置しているのが図3になる。
Scratchの中で、背景画像の上を四角い赤い線がぐるぐると回りながら、画像をスキャンして、それがMinecraftに反映されている。プログラム自体は良くは分からなくても、「MINECRAFT」と書いている文字の色をスキャンしていることが分かるだろう。
そこで、「もし●色に触れたなら」という命令の●のところに、「MINECRAFT」と書いている青色を指定するだけでいいわけだ。どのように色を指定するかは動画3を参照してほしい。
動画3では、文字の画像だけではなく、「お化け」キャラクターの画像も読み込んで、ブロックを配置させている。今回のプログラムは、サンプルとして提供されているものを利用しているため、プログラム自体の解説は最低限度の解説にしているが、ご了承願いたい。
このように、プログラミングを活用して画像のスキャンができるということを覚えていてほしい。プログラミングを応用することで、Minecraftの世界は自由自在に変えることができるのだ。
世の中には、「天空の城ラピュタ」の世界や「おそ松さん」のアニメーションをマイクラに作る人もいる
これまでの連載で紹介したように、Minecraft Piは「クリエイティブモード」だけの対応であるため、キャラクターを動かすなどはできず、ブロックで何かを作っていくことしかできないが、いろいろアイデアを出して考えてみると、結構凝った図形なども作成できるのではないかと思う。
実際、もっと複雑な図形も作ることはできるが、そうなると、当然プログラム自体もさらに複雑になる。ブロック自体も長くなり、Scratchのスクリプトエリアをスクロールしなければブロック全体が見えなくなってしまう。そうなると、ブロック全体の見通しが悪くなるし、解説の動画も長くなるので、今回は、基本的な図形の作成方法の解説にとどめている。
この基本的な図形の作成をヒントにして、ぜひ、皆さんでユニークな図形さらには、下記のような町やアニメーションを作っていただきたい。
- GTAVの舞台・ロスサントスをマインクラフト内で再現するプロジェクトが壮大
- マインクラフトでナウシカの腐海を再現! 巨大な王蟲のぬけがらが神秘的な雰囲気を醸し出す
- これはプロ松の仕業 マインクラフトのギミックだけで「おそ松さん」のOPを再現するあまりに革命的な人が登場
- 私の知ってる時間の概念と違う マイクラ一級建築士たちがたった5時間で作り上げた8つの城が美しすぎて鳥肌
- 「Minecraftでラピュタ再現」動画、待望の第2弾が公開! パン食べる洞窟もロボット兵もみんなブロック
- 全編まるごと! 「Minecraftで天空の城ラピュタ世界を再現してみた」がマジで完全再現過ぎる
- 合成じゃないのかよ……!! 「スーパーマリオブラザーズ」プレイ動画を「Minecraft」上で完全再現
- どういう謎技術だよ! 「マインクラフト」で実際にプレイできちゃう「パックマン」を再現する猛者が登場
- なんということでしょう 匠がMinecraftで作った「渓谷の和風都市」が美しすぎる
- こりゃ驚きだねぇ 審神者がマインクラフトで「刀剣乱舞」の本丸を完成させたぞ!
- 俺の知ってるマイクラと違う! 「不思議の国のアリス」の幻想的な世界をつくり上げたマインクラフト建築が神の領域へ
いったいどうやってこのような景観やアニメーションを作っているのか、想像もつかないかもしれないが、これらも全て、ブロックの組み合わせなのだ。ヒントを出しておくと、今回紹介した平面の図形に高さを加えることで、建築物を作れるし、それを組み合わせることで、町や景観を作ることができる。
マイクラの次にお勧めなプログラミングの世界
また、本連載で、プログラミングに興味を持った読者は、ぜひScratch以外のプログラミング環境やプログラミング言語にも取り組んでみてはいかがだろうか。
例えば、Scratchプログラミングで構築した建築物や町、景観を、大人気のゲームエンジン/開発環境である「Unity」の中に読み込むツールがある。
一部形が崩れてしまうなど、Unityに読み込んだ後の対応が必要な部分があるが、ツール側の改善を期待しつつ、精度をぜひ上げてもらいたいという方は、期待だけではなく寄付をしてメッセージを送ってみてはいかがだろうか。もしかしたらUnityを開発している企業が同様なことを企んでいるかもしれないが……。
いずれにせよ、Unityは無料でゲームの画面デザインなどは主にマウス操作で行うことができるので、本連載の次のステップとして使い方を学んでみてはいかがだろうか。
ゲームのキャラクターの複雑な動きなどは、「C#」「UnityScript」(ほぼ「JavaScript」)といった文字によるプログラミング言語を使って文字でプログラミングする必要があるが、こちらもScratchの次のステップとして、ぜひ挑戦してみてほしい。C#やJavaScriptは、Webサイトやソフトウェア、システムを作るのにも使われているので、覚えたらプログラミングを仕事にすることもできるはずだ。
なお、どちらかというと、C#よりもJavaScriptの方が初心者には学びやすいだろう。
本連載が、プログラミングというものの入り口になり、プログラミングを通じて読者の世界が広がればうれしい限りだ。
参考書籍
- 『Raspberry Piではじめるどきどきプログラミング』(阿部和広/石原淳也/塩野禎隆 著、日経BP刊)
著者紹介
薬師寺 国安(やくしじ くにやす) / 薬師寺国安事務所
薬師寺国安事務所代表。Visual Basicプログラミングと、マイクロソフト系の技術をテーマとした、書籍や記事の執筆を行う。
1950年生まれ。事務系のサラリーマンだった40歳から趣味でプログラミングを始め、1996年より独学でActiveXに取り組む。
1997年に薬師寺聖とコラボレーション・ユニット「PROJECT KySS」を結成。
2003年よりフリーになり、PROJECT KySSの活動に本格的に参加。.NETやRIAに関する書籍や記事を多数執筆する傍ら、受託案件のプログラミングも手掛ける。
Windows Phoneアプリ開発を経て、現在はWindowsストアアプリを多数公開中。
Microsoft MVP for Development Platforms - Client App Dev (Oct 2003-Sep 2012)。
Microsoft MVP for Development Platforms - Windows Phone Development(Oct 2012-Sep 2013)。
Microsoft MVP for Development Platforms - Client Development(Oct 2013-Sep 2014)。
Microsoft MVP for Development Platforms-Windows Platform Development (Oct 2014-Sep 2015)。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 子どもにプログラムの手順だけでなく概念を伝えたい
子ども向けプログラミング環境「Scratch」を学ぶ小学生が増えている。ものづくり寺子屋&きょーくりっの共同授業をレポートする。 - アプリは、どうやって動くの? プログラムって何?――初めてiPhoneアプリを作る人向け基礎知識まとめ
本連載では、これからプログラミングやiPhoneアプリ開発を始めてみたい方を対象に、開発に必要な知識を基礎から解説していきます。 - 「プログラマーって何するのが仕事なの?」と聞かれたときや、初心者がプログラミングを学ぶ前に読んでほしいマンガ「じゃまめくん」とは
人気過去連載を一冊に再編集して無料ダウンロード提供する@IT eBookシリーズ。Vol.6は、プログラミング初心者が、プログラミングを学ぶ前に読んでほしいマンガ連載『オブジェマンガ じゃまめくん』だ。 - 初めてUnityを触る人が無料で使い方を学べる日本語チュートリアルを全317ページ、59のサンプル動画で電子書籍本としてまとめました
人気過去連載を一冊に再編集して無料ダウンロード提供する@IT eBookシリーズ。Vol.8は、『ゲーム開発初心者のためのUnity入門』だ。 - Excelでプログラム作成を始めるメリットとマクロの基本
プログラミング初心者を対象にExcelマクロ/VBAを使った業務自動化プログラムの作り方を一から解説します。初回は、そもそもプログラミングとは何か、Visual BasicとVBAとマクロの違い、マクロの作り方、保存/削除、セキュリティ設定などについて【Windows 10、Excel 2016に対応】。