LoginSignup
2
1

More than 3 years have passed since last update.

ゲーム開発あれこれ(駄文)

Last updated at Posted at 2021-06-03

高橋名人の16連射

という話が大流行したのはもう30年以上も前だろうか。
入力検知はだいたい毎フレーム先頭で見るので判定回数は60回/秒。
ただしON/OFFの変化を検出するには2フレーム必要なので30回/秒。
16連射はON/OFFを毎秒16回なので理論上は実現可能。ただし。
60フレームを16連射、ON/OFFの32回で割ると1.875フレーム。
1フレームは16.66666msなので、実に31.2msでONまたはOFFの入力。
実際に秒間16発撃てていたかは微妙なところだ。
蛇足ながらシューティング全盛期に1フレームを見切る人はいた。

コマンド入力型ゲーム

ある時まではボタンはただ連打するもので、レバー+ボタン程度だった。
1987年に登場したストリートファイターはコマンド入力の概念を導入。
(波動拳3発でKO、ガード不可というクソバランスだった)
波動拳、昇竜拳、竜巻旋風脚は3入力なので最短50ms。
その後の格闘ブームでコマンドは一気に複雑化、最短入力時間は伸びた。
記憶している限りボタンボタンレバーボタンボタンの技があった。
それぞれON/OFFで2フレームかかるので10フレーム166.666msかかる。
ここまで長いと人間にも認識できるが、バランス上問題なかったのか?

ラスタースクロール

1993年まではゲームマシンはラインバッファアーキテクチャであった。
ラインバッファとは、画面の1ライン分のバッファを用意するという意味。
少量のバッファでBGとスプライトを重ね合わせできたので低コストだった。
このラインバッファにBGの1ラインをコピーしてからスプライトを重ねる。
この時、コピー開始アドレスにオフセットをつけると描画位置がずれる。
これを利用して1ラインずつオフセットしていけばラスターがゆらゆら。
これがラスタースクロールの原理である。
ちなみにフレームバッファアーキテクチャのPlayStationでは無理。
だがラスタースクロールは実現していたので力技だったと思う。
セガサターンはラインバッファアーキテクチャである。
回転拡縮BGと変形スプライトで3Dっぽく見せていたが苦しかった。

PlayStationとセガサターンの比較

PlayStationはメインRAM2MB、VRAM1MBとCPU/GPU/GTE/SPU。
極めてシンプル。それぞれの役割分担が明確で、さらには自社製造。
メインRAMはEDOでVRAMはSGRAMと、性能にも配慮していた。
カラーテーブルもVRAMに置くのでパレット数の制限も緩かった。
対するセガサターンは
SH-2が2個、CD制御のSH-1、サウンド制御68000、VDP1、VDP2、SPU
という、数え上げるだけでめんどくさいハードウェア構成だった。
メインRAM2MB、VDP2のVRAMに1MB、VDP1のVRAMに0.5MB。
余裕があるように見えるが、性能に寄与することはなかった。
これが後々セガの首を少しずつ絞めていくことになる。

セガサターンの敗因

直接的にはFF11が取れなかったせい、というのが世間の通説である。
だがFF参入発表当時まではいい戦いをしており、その勢いは続いた。
負けた原因はいくつかあるが、FF以外で言うならこうだ。

ハードのコスト高

大嘘を書いていたのでこのパートは書き直し。
セガサターンの敗因、というよりPlayStationの勝因は部品点数と構成だ。
プレイステーション歴代モデルの基板から見えてくるPS進化ヒストリー
を見ればわかるのだが、PlayStationは効率を追求した構成だった。
CPU+GTEをはじめ、ほとんどのLSIが自社製。社外IPのチップが少なかった。
プロセスルールの進歩により部品点数と実装面積が劇的に進歩した。
世代を追うごとに部品点数の減少と実装面積の縮小がはっきりわかる。
対するセガサターンは
SH-2(x2)とSH-1、68000が社外IP。RAMが多いことも一見有利に見えるが
フレームバッファではないセガサターンでは有利にならなかった。
性能の割に部品点数が多い効率の悪さが部品コストと実装コストに響いた。
後期にはSH-2x2を1パッケージにしたり効率化を試みたが、そのころには
シェアにおける勝負がほぼついていた。

描画品質の低さ

PlayStationはフレームバッファアーキテクチャで極めてシンプルだ。
毎フレーム全部消して全部描く。カラーテーブルもVRAM上にあった。
現在で言うGeForceやRADEONの基礎を実現していた。
そのため合理的で、描画品質も(当時としては)高かった。
対するセガサターンは変形スプライトで3Dっぽく見える2Dマシンだ。
スプライトをセル板に見立てて、対角線をもって曲げるイメージだ。
これでポリゴンっぽく見せることはできるが、曲げるのでゆがむ。
テクスチャゆがみが強く出るのでどうしても汚く見える。
映像クオリティで勝負になるとは言えなかった。

処理能力の低さ

PlayStationはCPUを純粋にコントローラにすることを狙っていた。
座標変換はGTE、描画はGPU、専用チップへの分散処理で性能を出した。
対するセガサターンは疑似ポリゴンなのでVDP1の性能に律速される。
スプライト描画としては高性能だがポリゴン表現には向かなかった。
SH-2の28MHzを2個搭載していたが、ボトルネックはそこではない。
バーチャファイター2は30fps、デイトナUSAは24fpsだと記憶している。
PlayStationの勝利はバランスの勝利なのだ。
後継のDreamCastではSH-4搭載のベクトル演算器で座標変換を行い
PowerVR2で描画することで完全な3Dマシンに設計された。
だがPlayStation互換のPS2を凌駕するには至らなかった。

シンプルな設計は強い

ハードウェアでもソフトウェアでもシンプルな設計は強い。
小さいものは美しい・・・と昔の偉い人が言ったとか言わないとか。
Unixなんかも、単機能のプロセスを連結して目的を達成する。
ハードウェアは役割分担をはっきりと決め、専用チップの連携が強い。
できるだけ自社IPの(コントロールできる)回路が重要だ。
将来的な高集積化で、他社IPだから無理、ではコストは下がらない。

だが時は21世紀(マルスはいない)

PlayStation5が生まれ、競合ハードウェアを寄せ付けない状況である。
だが中身はほとんどゲーミングPCそのものだ。コストダウンしただけ。
プラットフォームという枠組みに価値があるという状態である。
正直ゲームコンソールはすでに斜陽の産業に入りつつある。
ハードウェアコスト以上にソフトウェアの開発コストが高騰しすぎた。
開発は大規模化、開発ツールは高価な3Dモデラーを多数使う。
プロジェクトの費用は跳ね上がった。その分の売り上げは見込めるか?
スマホゲームでも作ったほうが儲かるはずだがそれもあと何年もつか。
リリースまでの開発費と回収見込みのバランスは今や最重要である。
スマホの世界ではリリース1年以内に閉じるタイトルも少なくない。
やはり最後もバランスなのである。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1