
#9 AI台頭によるMSX2++状況の変化とGeo3D
はじめに
昨今の AI (LLM) の高性能化は目まぐるしいものがありますが、特にレトロPC関連では、AI によって人間には困難だった最適化が行われて、とんでもない動きをするソフトなども急激に増え始めました。
MSX2++ もレトロPCであるMSXの機能を継承するのでその影響を受けます。
当初の狙い
私が販売したり市場を作ったりするわけじゃありませんが、当初は「西さんのお手伝い」と「私の作りたいもの」がマッチするので VDP の開発、並びに本体の開発を始めました。
2026年3月の騒動によって、どうやらマッチしていないということが分かり、「西さんのお手伝い」の役は終わり、あくまで「私の作りたいもの」を作るプロジェクトに変化しています。私は作るところまで、販売などは MSX Association がやる。
役を下されたと言っても、実質的に後継機のようなものなので「どのような人に刺さるマシンなのだろう?」というのは考えるわけですが、その中で外せないのが下記の軸だと思いました。
昔の MSXソフトがそのまま動作すること(懐古欲求)
turboR の次があったとしたらどうなっていたか(夢の実現)
中身のわかるコンピューター(教材)
個人で扱える規模のソフトウェアプラットフォーム(新機軸)
軸が明確であれば、受け取ったユーザーもまずそこで楽しむ。そこから徐々に新しい楽しみ方に広がったときにしっかりとした土台となる、と私は思っているので、軸を据えています。
しかし、2026年中盤、ものすごい勢いで高性能 AI が次々登場し、少し状況が変わってきました。
AI による開発速度の加速
FPGAのRTL開発なども含む広義のソフトウェアにおいて、AI の登場による開発速度の向上は数倍まで上がっているように思います。
例えば、V9968 の中のキャッシュメモリ。当初は2週間くらいかけてじっくり設計する予定でしたが、AI によってほんの1時間程度でちゃんと動くものが出てきてしまいました。
注意しないといけないのは、「キャッシュメモリ作って」と一言お願いすれば望みのものが出てくるわけではないので、それなりの知識を持った人が、AI に対して「欲しいものを正確に伝えること」は必要です。なので、依然として完成イメージをはっきり持った人間の存在は必要ではありますが、でも明確に伝えればコーディングは一瞬でこなしてきます。人間だと、自身の知識の引き出しから、より深い知識を引き出す「思い出す作業」に時間がかかることが多いですが、これが瞬時に行われる。巨大な演算能力による力業ではあるのですが、その点はすでに人間を凌駕しているわけです。
独創的なものは、なかなか AI からは出てきませんが、実際のところ人間からもそんなにポンポンと出てくるものではありません。たいていが、既存の技術の組み合わせで新しい技術が生まれています。そして、そういう組み合わせのものであれば、AI もある程度はやってくるレベルになってきています。
このような AI が普及してきたので、先ほど4つ掲げた軸のうちの1つ、「個人で扱える規模のソフトウェアプラットフォーム」という部分の扱える規模が劇的に大きくなってしまって、当初の想定からだいぶズレてしまいました。
V9968 は、人間が手作業でコーディングして、キャラクターを動かしたり、アニメーションさせたりを容易にできて、それでいてレトロな雰囲気を壊さないようにスペックを決めています。V9958 のままだとちょっと辛い部分は機能追加で補って、一方である程度の制限も残すことによって「スペックがここまでだから、ここまでしかできない」という妥協点をハード側に用意することによって、多少ラフに作っても「手抜きだろ?」と責められなくて済む、あるいは「この制限の中でこんな動きを実現したのか!」という技も見せられる。そういう遊びの場です。人間がコーディングするなら、遊びつくすまでに結構な時間がかかりそうなくらいには新機能を入れていたつもりです。
ところが、ここで AI の登場です。AI は、瞬く間に V9968 のスペックを理解し、AI を操るのが上手な人達は、あっという間に多数のデモを作ってきました。このペースだと、V9968 の追加機能なんて、あっという間に遊びつくされてしまう。短期間だと印象にも残らない。どうしたものか・・、という悩みが出た頃に、ある方が「Geo3D という V9968 のための 3D演算コプロセッサを設計しました。載せてみませんか?」という提案があったわけです。
Geo3D
もともと私は、3D の搭載にはあまり乗り気ではありませんでした。なので、それをサポートする機能は V9968 には一切追加していません。当初予定していたトライアングルフィルも実装前に搭載を止めました。それは、上に上げた4つの軸から外れるものだと思っていたからです。
でも、AI の登場によって、AI を上手に駆使すれば、Unity や UnrealEngine のようなミドルウェア・ライブラリが存在していなくても、ある程度 3D を手軽に扱うことができるようになった。ゼロから手で作るよりはだいぶ楽になるが、それでも Unity 等と比べれば難しいだろう。それって、個人レベルでチャレンジする面白い題材になるのではないか? 3D表現の仕組みを理解する教材になりうるのではないか? と少し気持ちに変化が出てきます。
Geo3D は、エミュレーターも整備されていたことから、それを利用して実際にソフトを作ってくる人が登場しました。
MSX V9968+Geo3D V2.0対応のNIGHT RAVENデモです。
— Kanon (@kanon_ai_dev) October 15, 2026
こちらもかなり高速になり滑らかさがUPしています。
GitHubは後ほど更新します。#MSX #V9968 #Geo3D pic.twitter.com/JxEVf1PTkS
このポストは最近のポストなので、Geo3D v2.0 による高速化が入ったものになりますが、MSXとは思えないような表示が実現しています。かといって「レトロ感が失われたのか?」と問われれば「いや、これは十分レトロだろう。なんだか懐かしい気がする」と、私は感じました。そう、これを入れてもレトロ感は失われない。スーファミの SuperFXチップを少し速くした程度。初代PlayStation が 1994年。PlayStation2 が 1999年。だとすると、1995~2000年くらいに登場したかもしれない MSX3 を狙っている MSX2++ として、おかしなことではないし、むしろ当時 3D を取り入れるのは妥当なのでは?と思うように変わりました。
そして、Geo3D が入れば、2Dと3Dのコラボや、Geo3D を 2D へ活用するなどの工夫も生まれてくるので、劇的に「遊び場としての可能性」が増えてきます。最初のうちは、シンプルに「どこかで見たことあるようなデモ」を作ることが多いと思いますが、ある程度落ち着いてくると「オリジナリティのある工夫で面白い表現をする」にシフトすると思います。これなら、AI はコーディングを支援する、人間はアイディアを出す、というところで、しばらくは使ってもらえるプラットフォームになりそうだ、と思ったわけです。
これが、Geo3D を採用することに決めた理由です。
私の AI の受け止め方
ソフトウェア技術は、もともと積み上げによって、少しずつ大規模化してきています。根本は、数値の計算方法やデータの並べ替え・順序などの工夫によって、その時代のコンピューターでも現実的な時間で処理できるように様々なアルゴリズムが考案され、そしてそれがライブラリ化され、アルゴリズムの具体的な演算を把握していなくてもライブラリの使い方を覚えれば使えるようになった。そして、そのライブラリを組み合わせて、さらにより上位の概念の機能を使えるようになった。
例えば、Z80 は乗算・除算命令は持っていませんけど、シフトと加減算の組み合わせによって数サイクルで計算を終えられる方法を考える人が出てきたわけです。そして、それらを組み合わせて内積をとったりすることで DCT が実現できるようになる。ビットごとの演算や比較を組み合わせて Huffman Encode/Decode ができるようになる。他にも Run Length 等の技術が登場して、それらを組み合わせることによって JPEG という画像圧縮が生まれる。そして、JPEG も今や当たり前の技術としてライブラリ化されているので、その中身を知らなくてもライブラリを呼び出すだけで、JPEG の画像を読み書きできる。さらにそれを組み合わせて MotionJPEG の動画が実現できる。といった具合に、小さいものを組わせてより複雑なことができるようにしてきた歴史がある。
AI は、ライブラリの使い方さえ覚える必要が無く、使い方は AI が調べて組み込んでくる。ネットで拾えるような情報は、自動的に調べてくれるようになった。ネット検索の延長上の作業を自動化してくれる。
一方で、人間が作りたいものを、AI が察することは、今のところはできないので、人間は頭の中にしっかりと完成イメージを持って、それを正確に言語化して伝える必要がある。でも事細かに説明するのは、プログラムするのと大差ないので、上手に伝える必要がある。今後は、その「上手にやりたいことを伝えられること」が重要なキーになってくると考えています。
「コップの絵を描いてほしい」とお願いしても、コップの色は?形は?個数は?向きは?背景は?何か入ってる?と、この一言では不明確な点が多数あるわけですが、その中でも絶対に外しちゃいけない部分があれば、それは明文化する必要があるわけです。なので、AI が「作りたいものの実現手段」を瞬時に用意してくれたとしても、人間が作りたいものを察することができない以上は細かく指示しないといけないし、出てきたものが期待するものと違っている部分が無いか、細かく検証するための知識も必要。これまでもコーディングの上位にシステム設計や検証といった作業があったわけですが、よりそちらの方に重きがシフトした。そして、それがモノづくりにおいて本質的な部分ではあった。コーディングは、単純なことしか理解できないコンピューターに対して、やりたいことを伝えるためにコンピューターが分かる言語に翻訳する作業だった、その作業から解放され、本質的な「やりたいことの表現」に注力できるようになってきた。そんな認識です。
AI も使っているうちに、ユーザーの趣向を学習しているように思います。そして、ある程度使ってくると、「これは言わなくても伝わる(察してくれる)」というのが出てくるので、もしかしたらそのうち、「コップの絵を描いてほしい」だけで、意図した絵を描いてくれるようになるのかもしれませんが、それにはもう少し時間がかかるんじゃないかなぁと私は思っています。
AIは否定してももうどんどん入り込んでいるので、ちゃんと理解してうまく使う方法を模索する方が、自分にとってプラスになる。そのように受け止めています。