ほぼ同じグラフィックス(バンプマップ、シェーダーなど)、サウンドの複雑さ、およびプレイスルー時間を(見たところ)持っているPCゲームがたくさんありますが、そのうちの1つは4 GBのスペースを必要とし、他の13 GBは必要です。
何故ですか?なぜサイズが大きく異なるのですか?
ほぼ同じグラフィックス(バンプマップ、シェーダーなど)、サウンドの複雑さ、およびプレイスルー時間を(見たところ)持っているPCゲームがたくさんありますが、そのうちの1つは4 GBのスペースを必要とし、他の13 GBは必要です。
何故ですか?なぜサイズが大きく異なるのですか?
回答:
すべてのゲームで使用されるサイズのほとんどは、そのアセット、特にオーディオ、ビデオ、および(やや程度は低いが)イメージ/テクスチャにあります。通常、バイナリとゲームデータは、これらのいずれよりもはるかに小さくなります。
次に、これらのアセットはすべて圧縮される場合とされない場合があり、異なる圧縮スキームを使用し、異なるフォーマットを持ち、解像度/ビットレートが異なる場合もあります。
たとえば、あるゲームでは大きな解像度のHDRキューブマップを使用し、別のゲームでは通常のテクスチャを使用します。あるゲームは各環境のシャドウマップを保存し、別のゲームは実行時にシャドウマップを計算することで同じ効果を実現します。1つの2Dゲームはスケルトンアニメーションを使用し、もう1つのゲームはまったく同じ視覚的出力を持ちますが、各アニメーションフレームを個別に保存します。
アセットの観点からは必ずしもそうではない場合でも、2つのゲームが同じ複雑さの順序を持っているように見えることは非常に簡単です。
デイビッドがすでに彼の答えで言ったことに加えて:
事実、現代のほぼすべてのゲームサイズの最大95〜99%が資産(ビデオ、オーディオ、テクスチャなど)で構成されています。
一部のゲームで4Gbしか使用しないのに、他のゲームでは同じレベルのグラフィックスを使用しているのはなぜだろうと考えている場合はどうですか。また、一部のゲームはアセットを圧縮形式でハードドライブに保存し、ロード中にオンザフライで圧縮を解除するという事実が原因である可能性があります。これにより、ロード中にオーバーヘッドが追加されますが、データは最初に圧縮されて読み込まれ、読み込みが完了するとすぐに解凍されるため、ロードされたデータの合計サイズは比較的小さくなります。
他のゲームでは、ハードドライブ上のアセットを完全に解凍し、既に「最終」形式でリソースをロードします。これは通常、インストーラーのサイズがインストールのサイズよりもはるかに小さいゲームです。一部のリソースは、いくつかの専用アルゴリズムを使用して非常に密集しているため、解凍するとファイルが10倍大きくなります。この場合、アセットは非圧縮形式で保存され、メモリに直接ロードされます。ここでは、ドライブのスループットが重要なポイントになる可能性がありますが、オンザフライ圧縮解除による追加のオーバーヘッドはありません。
どちらの方法にも長所と短所があります:書き換え可能なメディアにゲームをインストールできず、DVDやBR-ROMなどのROMからゲームを読み込む必要がある場合、圧縮形式での保存が不可欠です(これがよくあるケースです)ゲーム機の場合)ここで、解凍をその場で行う必要があります。PCには常に書き込み可能なドライブ(HDD、SSDなど)が搭載されているため、ここでは事前に解凍するのが一般的です。
ゲームアセットを完全に解凍すると、ゲームのパフォーマンスが向上し、それほど強力なCPUやGPUを搭載していない古いコンピューターでもゲームを開始およびプレイできるようになります。通常、ゲームコンソールには標準化されたハードウェアがあり、ゲームのパフォーマンスが良好かどうかを確認するためにゲームを簡単にテストし、必要なパフォーマンスに到達するために他のトリック(スプライトのダウンサンプリングなど)を実行できます。
[編集]:ゲームがロード時にアセットを圧縮解除しているかどうかを認識する方法は?以下は、いくつかのゲームで気づいたかもしれないいくつかの症状です。
このゲームでは、データの読み込み中に何らかの双方向性を提供します。
このゲームは、通常のコンピューターシステムの「起動」を模倣し、起動の進行状況に関する情報を提供します。