人工無脳は電気ヒツジの夢を見るか?:プチコンで始めるBASIC新世代育成“虎の穴”(9)(2/3 ページ)
武骨なようで中身は繊細!? プチコンによるBASICプログラムにおいて、画面上の“見栄え”は非常に難しい問題だ。今回は、やり過ぎない程度のスパイスを加えたサンプルプログラムを紹介する。おや、ハカセの手に「ファミリー○ーシック」が……なぜ!?
プチコンのスプライトは、ファミリーベーシックに通ず!?
キャラの顔とフキダシを付けるだけで、人物がしゃべっているコトになるという表現上の「記号」を使った演出ですね。見た目が華やかになった以上に、キャラクター性、ひいてはストーリー性も出てきました(多分!?)。これもまた、プログラムの歴史の中で生み出された1つの表現かもしれません。
イルカとか?
あっ……。
ゲフン、ゲフン! 何事も実装次第じゃが、まあこのくらいのプラスアルファはあってもよいのじゃないかの? ちなみに、フキダシはグラフィックス命令を使って、2次元の座標系で書かれておるぞ。
……(略)…… GCLS 6 GFILL 0,8,256,56,15:GFILL 8,0,248,64,15 GCIRCLE 8,8,8,15:GCIRCLE 248,8,8,15 GCIRCLE 8,56,8,15:GCIRCLE 248,56,8,15 GLINE 124,64,128,68,15:GLINE 128,68,132,64,15 GPAINT 4,4,15:GPAINT 252,4,15 GPAINT 4,60,15:GPAINT 252,60,15 GPAINT 128,66,15 ……(以下、略)……
とっちらかったリストになってしまうのがナンじゃが、要はラインツールと円ツール、塗りつぶしツールで描いとるようなもんじゃな。
それは分かるけど、女の子の画像はこのまま描くのはけっこう大変じゃない?
そこはまあ、ホレ、公式サイトのフリー素材をダウンロードすればいいのじゃよ。
テメエ! そこまでして公式サイトに誘導したいか!
じゃって、せっかく作ってあるし……。
確かに、これを使えば手間いらずだし、そのためのフリー素材だから、正しい使い方ではあるのかな?
ここでは、スプライトとして表示しているね。リソースの中からクリップして登録するSPSET命令、その表示位置を決めるSPOFS命令、それとクリップした範囲と隣の範囲でパラパラアニメするSPANIM命令でできているわけだ。
……(略)…… SPSET 0,0,10,0,0,0,32,32 SPSET 1,8,10,0,0,0,32,32 SPSET 2,16,10,0,0,0,32,32 SPOFS 0,112,72 SPOFS 1,112,72 SPOFS 2,112,92 SPANIM 0,2,16 SPANIM 2,2,32 ……(以下、略)……
パラパラアニメ? ああそうか、口パクは2つの顔を切り替えて作ってあるのか。
これはキャラの『足踏み』パターンなんかにも便利じゃな。アニメーション中でもあくまで1体のスプライトとして扱われるので、表示位置を動かせばそれだけで『足踏みしながら移動』すなわち『歩いて移動』になるのじゃ。
昔でいえば、『ファミリーベーシック』のスプライトと一脈通じるところがありますね。
キ、キミ、本当は何歳じゃ! 確かに、ファミリーベーシックはスプライトを動かすと、自動的に足踏みパターンでアニメもするという、何かやたらと潔い作りになっておったのう。とはいえ便利でもあったので、プチコンでもこういう形で影響を受けておるのじゃな。
プリセットのスプライトパターンが定義されてるところも一緒だね。プチコンだと変更可能だけど……。
ファミリーベーシックの場合、基本的にデフォルトから書き換えできないという、まあこれまた潔いものじゃったな。もっとも、多くのBASIC環境ではエディタもなしに数値で1ドットずつスプライトキャラを定義するハードルの高さじゃったし、ファミリーベーシックのスプライト仕様が初心者に優しかったのも事実じゃ。プチコンでは、両者のいいとこ取りをさせてもらったぞ。ウォッホン!
ちなみに、前回「見せてもらおうかMSX2+の性能とやらを!!」では、プチコンと『MSX2+』のグラフィックス速度を比較してみましたが……。
むっ、ヌシら! ま、またプチコンをダシに今度はファミベーやMSXのスプライトをおとしめようというのか! あれはあれで良かったんじゃー!!
被害妄想っぽいなあ。
……えー、ハカセ。スプライトの場合、ハードによって独自の仕様が多く、プチコンとの単純比較が困難ということで、今回は見送りました。
えっ!? あ、ああ、そう……なの(ささっ!!)。
Copyright © ITmedia, Inc. All Rights Reserved.