教育事業 パルテア
Home
Education
Course
Academy
Cuisine
Unity
Blender
教育事業部の事業内容 演劇、音楽のタレント並びに作詞家、作曲家、編曲家等アーティストの育成及びマネージメント、コンピュータ教室の経営等を行っています。
unity Detail
ゲームエンジン Unity オンラインマニュアル
Home
|
unity
|
unity Detail
|
unity Search
Working in Unity
|
Asset workflow
|
Input
|
2D game development
|
Graphics
|
World building
|
Physics
|
Scripting
|
Audio
|
Video and cutscenes
|
Animation
|
〜Unity Graphics 動的解像度〜 #ゲームプログラミング #ゲーム制作 #unity3d #unity3dgames #unity2d
動的解像度
動的解像度は、GPU のワークロードを軽減するために、個々のレンダー ターゲットを動的にスケールできるようにするカメラ設定です。アプリケーションのフレーム レートが低下した場合は、代わりに解像度を徐々に下げて一貫したフレーム レートを維持できます。アプリケーションが GPU 依存になっているためにフレーム レートが低下しそうであることがパフォーマンス データから示唆されている場合、Unity はこのスケーリングをトリガーします。また、アプリケーションの特に GPU を集中的に使用するセクションをプリエンプトし、スクリプト経由でスケーリングを制御することで、スケーリングを手動でトリガーすることもできます。徐々にスケーリングすると、動的解像度はほとんど目立たなくなる可能性があります。
レンダーパイプラインの互換性
動的解像度のサポートは、プロジェクトが使用するレンダー パイプラインによって異なります。
このドキュメントで説明されているように、組み込みレンダー パイプラインとユニバーサル レンダー パイプライン (URP) はどちらも動的解像度をサポートしています。
高解像度レンダー パイプライン (HDRP) は動的解像度をサポートしていますが、それを有効にして使用する方法は異なります。 HDRP の動的解像度については、「HDRP の動的解像度」を参照してください。
サポートされているプラットフォーム
Unity は、iOS、macOS、tvOS (Metal のみ)、Android (Vulkan のみ)、Windows スタンドアロン (DirectX 12 のみ)、および UWP (DirectX 12 のみ) で動的解像度をサポートします。
レンダーターゲットへの影響
動的解像度を使用すると、Unity はレンダー ターゲットを再割り当てしません。概念的には、Unity はレンダー ターゲットをスケールします。ただし、実際には、Unity はエイリアシングを使用し、縮小されたレンダー ターゲットは元のレンダー ターゲットのごく一部のみを使用します。 Unity はレンダー ターゲットを最大解像度で割り当てます。その後、動的解像度システムがレンダー ターゲットをスケールダウンし、新しいターゲットを再割り当てする代わりに元のターゲットの一部を使用して再度スケールアップします。
レンダーターゲットのスケーリング
動的解像度では、レンダー ターゲットに DynamicallyScalable フラグが設定されます。これを設定して、Unity が動的解像度プロセスの一部としてこのレンダー テクスチャをスケーリングするかどうかを指定できます。カメラには、allowDynamicResolution フラグもあります。これを使用して動的解像度を設定できるため、より単純なシーンに動的解像度を適用したい場合にレンダー ターゲットをオーバーライドする必要がなくなります。
MRT バッファー
カメラで動的解像度を許可を有効にすると、Unity はそのカメラのすべてのターゲットをスケーリングします。
スケーリングの制御
ScalableBufferManager を通じてスケールを制御できます。 ScalableBufferManager を使用すると、動的解像度システムのスケールをマークしたすべてのレンダー ターゲットの動的幅と高さのスケールを制御できます。
例として、アプリケーションが望ましいフレーム レートで実行されているが、状況によっては、パーティクルの増加、ポストエフェクト、画面の複雑さの組み合わせにより GPU パフォーマンスが低下すると仮定します。 Unity FrameTimingManager を使用すると、CPU または GPU のパフォーマンスが低下し始める時期を検出できます。そのため、FrameTimingManager を使用して、新しい希望の幅と高さのスケールを計算して、フレーム レートを希望の範囲内に保ち、そのスケールをその値まで下げてパフォーマンスを安定させることができます (瞬時に、または設定されたフレーム数にわたって徐々に)。画面の複雑さが軽減され、GPU のパフォーマンスが安定している場合は、幅と高さのスケールを GPU が処理できると計算された値に戻すことができます。
例
このサンプル スクリプトは、API の基本的な使用法を示しています。これをシーンのカメラに追加し、カメラ設定で [動的解像度を許可] をオンにします。また、プレーヤー設定を開き (メニュー: [編集] / [プロジェクト設定] を選択し、プレーヤー カテゴリを選択)、[フレーム タイミング統計を有効にする] チェックボックスをオンにする必要もあります。
マウスをクリックするか、1 本の指で画面をタップすると、高さと幅の解像度がそれぞれ、scaleWidthIncrement 変数とscaleHeightIncrement 変数の量だけ低くなります。 2 本の指でタップすると、同じ増分で解像度が上がります。
unity
日時:// ~ //
名称:
場所:
料金:¥0 (消費税込)
続きを読む
unity Images