私はゲームエンジンを開発しており、異方性フィルタリング、アンビエントオクルージョン、アンチエイリアシングなどのゲームテクノロジーを発見し、研究しています。
通常、ゲームでは、これらの設定のオンとオフを切り替えることができます。ただし、これらの設定がプラスのみを追加する場合、開発者のゲームエンジンでこれらのトグル値を追加する理由はありますか?
パフォーマンスが主要な要因であることは理解していますが、これらの設定を常に変更できる理由は他にもありますか?
私はゲームエンジンを開発しており、異方性フィルタリング、アンビエントオクルージョン、アンチエイリアシングなどのゲームテクノロジーを発見し、研究しています。
通常、ゲームでは、これらの設定のオンとオフを切り替えることができます。ただし、これらの設定がプラスのみを追加する場合、開発者のゲームエンジンでこれらのトグル値を追加する理由はありますか?
パフォーマンスが主要な要因であることは理解していますが、これらの設定を常に変更できる理由は他にもありますか?
回答:
一般に、これらの機能をユーザーがオン/オフに切り替えることができる主な理由はパフォーマンスです。一般に、それらは高価であり、ユーザーがそれらをオフに切り替えることを許可することにより、開発者はよりローエンドのマシンを含むようにゲームを効果的に実行するマシンのセットを広げます。これは、プレーヤーが増える可能性があるため、売上が増える可能性があります(これらのプレーヤーは視覚的な忠実度が低下しても生き残ることができると仮定しています)。
@Arteliusが指摘したように、これらの高度な機能は、バッテリー寿命やファン出力に大きな打撃を与える可能性があるため、ユーザーはそれらの理由でそれらを無効にしたい場合があります。
最後に、ユーザーに自分が好むものに関する選択肢を提供するだけです。一部の人々は、アンチエイリアシングがどのように見えるか、またはv-syncを無効にすると画面が裂けてしまうことを好まないかもしれません。あるいは、より実用的な例として、フォントの合字を有効または無効にするオプションがあるPillars of Eternityを検討してください。これらはおそらく実行時のパフォーマンスの点ではそれほどコストはかかりませんが、一部のユーザーはテキストを読みにくいと感じるかもしれません。または(@SeanMiddleditchが指摘しているように)、個々のマシンでバグがあるため、機能を無効にすることができます。あるいは、競争上の優位性を得るために機能を無効にしたい場合があります(メカニックの注意をそらすノイズの多い視覚効果を無効にするなど)。
ジョシュ・ペトリーがすでに指摘したように、最も重要な懸念はパフォーマンスです。エンドユーザーのハードウェアがどれほど強力であるかを知ることができるだけでなく、エンジンを構築しているときは、人々がどのようにそれを使用するかさえ知りません。ゲーム開発者は、最高のハードウェアでも効果をオフにしないとリアルタイムでレンダリングできないほど多くのポリゴンを画面に配置するゲームを構築したいのではないでしょうか?しかし、自動的にそれを処理することも良い考えではないかもしれません:たぶん、開発者はどのオブジェクトでどの効果を無効にするかを決定したいかもしれません。
しかし、パフォーマンスに加えて、審美的な懸念もあります。
たとえば、異方性フィルタリングから最近傍補間に切り替え、低解像度テクスチャまたはアップスケールスプライトを使用すると、ノスタルジックなピクセルアートの外観になります。これを行うゲームの一般的な例は、Minecraftです。そしてもちろん、その美学をコピーする多くのゲーム。彼らがより良い方法を知らないからではなく、彼らがしたくないからです。
もちろん、パフォーマンス。クレプスキュラー光線、被写界深度、ブルームなどの一部のエフェクトは、特に古いGPUでfpsに非常に負担がかかります。また、いくつかの余分なfpsを得る良い方法は、反射と影を減らすか無効にすることです。また、Arteliusポイントを繰り返すと、視覚効果もバッテリー寿命に影響します。
それに加えて:
Modded Minecraftは、このための本当に良い遊び場です。Minecraftはチャンク全体をレンダリングするため、そのポリゴン数は見かけよりも多くなります。それに加えて、ガベージコレクションにチャンクを配置し、Java [1]などのポインタ言語を欠くという複雑さを加えると、特に古いハードウェアでは常にパフォーマンスの問題が発生する可能性があります。優れたグラフィックスを要求する人もいれば、パフォーマンスを向上させたい人もいました。そのため、GLSL Shaders ModやOptifineなどのMODが登場し、両方とも追加のグラフィックオプションが追加されました-異なる目的ではありますが-互換性があります[2]。それらを使用する機会があれば、視覚効果。
[1]:Microsoftは、ポケットエディションに基づいて、Windows 10用のMinecraftのC ++ポートを作成しました。これは、古いJavaバージョンよりもはるかに優れたパフォーマンスを発揮します。これは、Javaが実行できないという意味ではありません。これは、C ++であるという症状だけでなく、Microsoftであるという症状でもあります。
[2]:実際、これらのmodはMinecraft 1.8.9にマージされました-OptifineはGLSL Shaders Modを吸収しました。
そして、あなたはゲームエンジンを開発していると言うので、あなたのコードが多くの異なるゲームで再利用されるチャンスがあると期待しています。ゲーム開発者がこれらの効果を使用するかどうか、およびそれらを無効にするオプションを提供するかどうかを決定できるようにすることをお勧めします。すべてのゲームですべての効果が意味をなすわけではなく、一部のゲームは一部の効果に依存する場合があります。
一部のゲームでは、これらの効果を使用してムードを設定したり、プレーヤーに情報を伝えたり、芸術的なライセンスを取得したりすることを検討してください。
特に、視覚効果を使用して、人間の目ではなくカメラで見ているように見えるようにしようとする傾向があります。これは、色収差、レンズフレア、フィルムグレイン、その他の「シネマティック」エフェクトなどのエフェクトを使用して試行されます。これらはすべてのゲームに適しているわけではないため、ゲームエンジンによって強制されるべきではありません。
ほぼすべて-全部ではないにしても-シェーダーで行われているので、ゲームエンジンで開発者がシェーダーをアップロードできるようにします。
アクセシビリティオプションに関する注意:多くのビデオゲームは、聴覚障害者を無視します。聴覚的な方法でのみ情報を提供するだけでは不十分な場合があります。入ってくる火の方向や近くの敵の存在(「聞こえる」)などの事柄を反映する視覚効果を追加することは良い考えです[3]。そしてもちろん、クローズキャプション。また、色盲の人がいることに注意してください...色によってのみ区別されるアイテム...ええ、再設計と見なされます。
[3]:ヒス音すら聞こえないとき、Minecraftのクリーパーがどのような痛みを感じるかわかりません。それらはランダムなinstadeathになります。
★知っているほど
まだ他の人から言及されていないもの:
グラフィック機能を無効にすることは、特定のセットアップに関する問題の有効な回避策であり、パフォーマンスとは無関係です。
ほんの一例として、一部のグラフィックオプションは、Wine(LinuxのWindows互換性レイヤー)でWindowsゲームを実行しているときに、指定されたレンダリングエンジンで正しく動作しません。
特定の(意図的に名前が付けられていない)ゲームについては、フィルタリングをトライリニアに調整し、反射を無効にする必要があります。私のリグがそれに合っていないからではなく(確かにそうです)、そうしないとグリッチやクラッシュをレンダリングするからです。
別のゲームでは、nVidiaカードを実行するリグの「フォグ」エフェクトを無効にする必要がありました(ネイティブWindows上であっても)。フォグは常に100%不透明になるためです。
他の回答/コメントで言及されているものですが、実際には特定の設定(葉の密度、グラなど)をオプションにしない理由です:
対戦ゲームでの敵の可視性。
ゲームの「外観」を「本当に悪い」に設定することで、プレーヤーが競争上の優位性を獲得できる場合、次の2つの方法でゲームエクスペリエンスが損なわれます。
可能な限りそれを避けてください。低パフォーマンスのリグには、フォアグラとフォリッジを不格好に見せますが、設定を低くしてもゲームプレイに有利にならないようにします。
競争力のあるオンラインゲームのプレーヤーは、パフォーマンスが問題にならない場合でも、より美しいビューよりもシンプルまたはクリアなビューを好む場合があります。多くの視覚オプションは視覚的なリアリズムを追加しますが、プレーヤーが実際に見たいものをあいまいにします。
ゲームのクライアントであらゆる種類の余分な草や葉、特殊効果、煙/霧/火などを無効にするように設定すると、ゲーム内で敵に気づきやすくなり、ターゲットを設定しやすくなります。不利な影響。
他の答えは良いですが、私は彼らがあなたがオフにしたいかもしれない実際の効果の良い例を欠いていると思います。
私にとって、例えばGTA3が持っていた非常に安価でひどい「モーションブラー」は、ゲームを悪化させました。幸いなことに、それをオフにすることができました。
まだプレイしていませんが、GTA5で見たことは、GTA5を試してみたら無効にする別の非常にハッキングなソリューションです。(https://www.youtube.com/watch?v=VjIhl8hbO18を参照)