カテゴリー
ゲーム四方山話

ゲーム用途でのFPGAとソフトウェアエミュレーションのごく簡単な比較

掲題の件について2022年末に思ったことをオンラインメモしておく。


まずはAnalogueの互換機やMiSTer FPGA愛好者でFPGAベースの機器は常にソフトウェアエミュレータを使用している場合より上だと勘違いしているのかなって感じる人をちょい見かけるので書いたTweet(最下段)を。

実際には一長一短だしむしろ歴史の長いソフトウェアエミュレーションの方が現状強い場面は多いよなと(そしてtypoしているアレ)。

ぱっと思いつくだけでも現状ソフトウェアエミュレーションの方がこの辺アドバンテージがある。

  • 対応機種の多さ
  • 一機種あたりの対応タイトルの多さ(再現度の高いソフトの多さ)
  • ステートセーブ・ロードの対応度
  • メッシュを半透明にするなどの映像加工
  • (ラグはともかくとして)安価なハードで実現可能

もちろん、探せばもっとあるだろう。

FPGAもメガドライブやファミコンなどのメジャー機のコアはすでにあるし、その辺の機種は特殊なコントローラーを使うものを除けばほぼすべてのソフトも動くが、サターンはまだ対応度が低いし、ドリームキャストはまだない(というかDE10-Nanoの上位ハードでないと無理では?)と機種や対応ソフトの面でまだ弱い。アーケード基板においても対応タイトルに圧倒的に差がある。

そしてFPGAでのステートセーブ・ロードはまだ弱く、対応しているのはごく一部の機種用のコアでしかない。メガドライブやスーパーファミコンレベルのメジャーな機種のコアでもMiSTer/openFPGAともにステートセーブ・ロードには対応していない(あくまで2022年末時点では)。Analogue PocketのAnalogue製コアが全部ステートセーブ・ロードに対応しているのはむしろ例外なくらい。

と、弱点だらけのようで、FPGAのラグの小ささがACT/STGのようなリアルタイム性の高いゲームを遊ぶときにとてつもなく大きく高く評価されるところなのである。絵や音の再現度がいくら高くても、ラグが大きくて手触り感が全く異なると楽しめないってタイプの人にとってみると実機プレイが困難なゲームだと特にだがFPGAでのハードウェアエミュレーションのありがたみは大きい。


上記勘違いして欲しくないのは、これはあくまで2022年末時点での比較でしかないということ。比較した項目についてソフトが得意としているからとかFPGAが苦手としているからとかよりも歴史的に長いソフトウェアエミュレータの方が基本的に実装が進んでいるということの方が大きいだけの話なのだ。逆にFPGAは歴史的に遅れているぶんこれからの伸びしろが大きいともいえる。

現時点ではラグの部分で見劣りすることが多いソフトウェアエミュレーターもマシンパワーが上がればそのぶん手触りの部分もよくなることが期待できるし、けっきょく目指すところは同じでルートが違うというだけだと認識している。ただ汎用OS上でラグをどれだけ少なくできるかというのが現状みえてなくてSTG/ACTなどのリアルタイム性の高いゲームを快適に遊ぶということについての見込みは少なくとも自分が現役の間はFPGAの方が明るいと予想している(あくまで個人的に)。

FPGAについてはMiSTer FPGAのような汎用のFPGAマシンでの活用もよいが、ここ数年発売されたアーケード筐体のミニハードものでことごとく低価格SoC上でのソフトウェアエミュレーション由来の遅延が問題になってたことを鑑みると、こういう製品にFPGAが活用されるようになって欲しいとずっと願っている。ただ、量産されることでコストが下がっていくことを期待していたら世界的な半導体不足の影響でむしろ値上がりしていて、ミニ筐体に取り入れられるほどチップが安価になる日がいつになるのか現時点では全く見えなく、攻防ともに見込みなく投了もやむを得ないということでこの記事は終わりにさせてもらう。いつか情勢が変わることを夢みて……。


[関連外部サイト]

[関連記事]

Pocket