ターミナルの中に、文字だけの3D世界
個人開発者のholonaut氏が、ターミナル上で動く一人称視点のオープンワールドRPG『Swaggerfall』を披露。3Dで計算した絵をASCII文字に置き換えて描き、地図もNPCの会話も自動生成される。
ひかり:ねえ大変! 部室のパソコン、ついに壊れたっぽい! 画面がびっしり文字で埋まってて、しかもその文字がぐにゃぐにゃ動いてるんだけどっ!
みずき:…壊れてない。それ、あんたが5分前に自分で起動したやつでしょ。
ひかり:えっ、これゲームなの!? わたしさっきから、記号の海をひたすら歩いてるだけなんだけどっ!
ことね:それで合っているわよ。『Swaggerfall』ね。holonautさんという個人の開発者が昨日お披露目したばかりの、ターミナル——黒い画面に文字を打ち込む、あの窓のことね——その中で動く一人称視点のオープンワールドRPGなの。
ひかり:ことね先輩、あの黒い画面って文字しか出せないよね? どうやって3Dになるのー?
ことね:裏では普通に3Dの計算をしているの。できあがった絵を、最後にASCII文字——半角の英数字や記号のことよ——に置き換えて表示しているだけ。ターミナルは1文字ずつ背景の色を変えられるから、文字の一つひとつを細かい色のマス目として使って、思ったより滑らかな絵にしているのよ。
みずき:…で、それ誰得なの。素直に3Dで出せばよくない?
ことね:開発者さん本人が、自動生成のオープンワールドRPGを作りたくなって「おもしろ半分でターミナルの上で動かしてみた」と言っているの。誰得も何も、まず本人得ね。地図は自動生成で無限に広がるし、ジャンプでも採掘でも料理でも経験値が入る。戦闘はターン制のコマンド式で、NPCの会話まで自動で作られるのよ。エンジンはRustで、AIの助けを借りて自作したそうだわ。デモ版はitch.ioで配る予定なんですって。
みずき:…ただ、いまは処理も描画もぜんぶCPU任せで重いらしいよ。画面はいちばん軽そうな顔してるのに、中身は力技。……嫌いじゃない。
ひなた:ふぁ〜……ひなた、さっき同じ画面を見たのですけど、山だか木だか分からなかったのです。でもひかり先輩は「歩いてる」って言ったのですよね。じゃあ、いちばんすごいのは絵じゃなくて、ひかり先輩の頭なのです。
まとめ:記号の並びを森だと思えた時点で、絵はもう完成している。CPUより先に、こっちの目が働いていた。