プチコンmk2 DSを使った開発環境がたったの800円とはね

プチコンmk2が昨日、DSi Ware にて3月14日に発売になった。
ちょうど、ホワイトデーと言うこともあり、チョコのお返しにこれを利用した紳士諸氏も多いのではなかろうか。

私も早速購入して、少しいじってみたので、気付いた事を書いていきたい。
(ちなみに前作、プチコンは使っていない)

  



プチコンmk2について
プチコンmk2はDSi以降で動作するDS Wareの形で提供されるDS向けのBASICである。
そう聞いて分からない人に説明しようと思うと難しいが、「DSでゲームをプログラミングして遊べるソフト」だと思えば、だいたいそんな感じだ。

BASICはインタプリタ言語なので、実行速度的、開発環境的に、大規模なソフトには向かない。「大勢での開発に向いておらず」「実行速度も遅い」からである。
このため、市販ソフトがこの言語で書かれることは、99.999%ない。

しかしホビーユースという観点で考えれば、逐次実行方式である為、「少しずつ確認しながら組み立てていける」というメリットが大きくなる。
また、DSはそれ自体、BASICが動くハードとして考えると「極めて高性能なハード」であるとも言える。
BASICと言うと、MSXMSX2あたりがパソコン少年向けだったと思うが、あれよりもずっと強力で、実感としてはPlaystation1で2Dのゲームを作るくらいの速度が出る。

つまり、自分ひとりですべてを作れる規模のゲームであれば、BASICはなかなかおもしろい言語であると言えるのである。

  



■できること、できないこと
スプライト同時表示100枚で、それぞれ、16バンクある16色パレットの中から自由に色を使える。
多色刷りでも1ライン3色までだった、MSXより遙かに強力。
スプライトのサイズは8x8〜64x64まで使用可能で、拡大、縮小、回転をサポート。

BG面を上下画面それぞれに2画面ずつ持ち、チップを並べる形で、ハードウェアスクロールに対応している。
ハードウェアスクロール機能を持たなかったMSX2よりも遙かに強力。

MMLによる音階の再生が可能で、音色はFM音源(風)のものが128音+ドラム64音+PSG8音。さらに32パターンまでのオリジナル波形を登録可能。
8トラックの同時再生が可能で、音声合成によるカタカナの発音も可能。
PSG3トラックだったMSX、6+ドラムだったFMパック(MSX2+)よりも遙かに強力。

  
   埋め込み再生が出来ないが、是非、youtubeに飛んで聴いてみて欲しい

画面は上下2画面が使用可能。
ただし、下画面へのスプライトの描画はかなりの制限をうける(あらかじめ決められた記号しか描画できない)
もちろん、下画面のスライドパッドは入力として使用可能。

処理速度は、普通にBG面+スプライトという使用であれば、かなり大盤振る舞いをしても重くならない。
一方で、グラフィック面に対する描画は、フィルレート的な制約が大きいので、1フレームあたりの描画面積を少なくするような工夫が必要になる。
(例えば、全画面消去をせずに、絵を描いた部分だけを背景色で消すなど)



■制限すらおもしろい
質の高いゲームを作りたいのであれば、PCでDirectXをつかったり、スマートフォン向けのSDKで制作する方がクオリティの高いものができる。
しかし、プチコンmk2は、「自分ひとりで全部出来る範囲」というスケールで、「DSというゲーム機で動くもの」を、「DSだけで完結した開発環境」において行えるというのが魅力的なのである。

PCでの開発環境は、「何でも出来るようになった反面、実際には手が出なくなった」という側面も併せ持っている。

たとえば、256x192という解像度であれば、16x16というキャラクターも十分にありな選択だが、これが1024x768まで広がると、宇宙の中の砂粒の様なサイズのキャラになってしまう。
同じサイズにしようとおもったら、64x64で描かねばならず、粗いからこそ誤魔化せていた部分も途端に破綻しだす。
この様なスケール感では到底、「趣味のゲーム」なんてものは作れない。

DSi Wareによるプチコンmk2は、小さなゲームに必要な性能を十分に持っている反面、リソースを中心にした程よい制約が、逆に心地よくできていると言える。

ただし、あくまでもプログラム言語なので、C言語を知っている人が手を出すには問題ない反面、プログラム言語を全く知らない人が手を出した場合、高い確率で何も作れないという結果になるだろう。
逆に、かつてBASICでプログラミングを楽しんだ、おっさん(おっさん系淑女を含む)ならば必携のソフトだと言える。なにせ、こんなものがたったの800円で買えちゃうのだから。