07/04/28 04:03:09 BIGoNGjR0
んじゃ俺も中途半端な知識で補足するけど
PS2ってVRAMが4MBしかないんだけど、各ゲームメーカー工夫を凝らしていて
その使われ方が多様なわけ、今のPCの構成みたいにGPUがほぼ出力専用ではなく
例えばFF10でバトルに入る瞬間とか、GSがポリゴンとして描画したVRAMの内容を
スナップショットとしてその時点の画面を静止画としてテクスチャに使ってエフェクトを
かけてシーンチェンジするとか、まぁ他のゲーム機でもやってるわけだけど、
そういう事をやるためにはGS自体を完全にエミュレートしなきゃいけない。
単純にポリゴンをガンガン描画するだけなら全てをGPUに任せられるけど、
エミュレートするって事はGPU自体がかなりのプログラミング機能をサポートしていなけ
れば出来ない。 なので、仕方なくCPUでやるしかない。
DirectX10とかでシェーダーのプログラミング自由度が上がったって言うけど、
そんなレベルじゃない。 本当に汎用的なプログラミングをGPU側で出来るようにならないと
他のGPUの動作をGPU自体でエミュるなんて無理。
PCSX2が特定のGPU専用に作るのなら出来るかも知れないが、PCではDirectXや
OpenGLでラッピングされて、どのメーカーのGPUも最大公約数的な機能(APIで定義され
ている機能)しか発揮できないから難しいと思うよ。
事務職でプログラミングをちょっとかじった事がある人ならイメージできると思うけど、
CPUはC++やVBAみたいな汎用言語
GPUのシェーダーはExcelのセルに直書きしているマクロ