Choose your operating system:
Windows
macOS
Linux
Unreal Engine 4.17 では、クリッピング システムを大幅に改善しました。一部のケースでは、後方互換性がなくなることがあります。こうした変更についての追加情報は、 スレートのクリッピング システム をご覧ください。
UMG のクリッピング システムでは、ウィジェット (およびエディタの他の部分) でテキスト、画像、コンテンツをどのように表示するかを制御する フレームワークとして スレートのクリッピング システム を、使用します。クリッピング は、レンダリングしたオブジェクト (グラフィックスとテキスト) をバウンディング ボックスを使用して領域に制限し、その外側にあるものは表示しないことで機能します。クリッピング システムは、現在、 座標軸に平行になりました。つまり、どの回転でもクリップすることができます。これはトランスフォームの処理の仕方により、以前は不可能でした。
この例では、各ボタンは表示されたテキストの親になります。これらの例は、ボタンまたはテキストがクリッピングされるかを示しています。
左 - ボタン上またはテキスト上で有効なクリッピングはありません。
中央 - テキスト上でクリッピングが有効になっています。
右 - ボタン上でクリッピングが有効になっています。
キャンバス パネル (すなわちクリッピング ゾーン) はゲーム画面を表し、ゲームでこのエリア外にあるものを何でもクリッピングします。
UMG Designer グラフでは、キャンバス パネル (青) がゲーム画面のクリッピング ゾーンを表します。
変更前後を比較した以下の例を見てみましょう。
|
Image Widget がキャンバス パネルの端に配置されて、バウンディング ボックスの一部が外側になっています。クリッピング システムは、レイアウト空間を使う代わりに座標軸に平行になったので、
アーティファクトや問題を解決したクリッピングになります。
クリッピングのプロパティ
UMG の [Details] パネルの [Clipping] で選択したウィジェットに基づき、クリッピングの処理方法を変更することができます。
プロパティ |
説明 |
---|---|
Inherit |
子をクリッピングせず、親ウィジェットから渡されたクリッピング/カリングに従います。 |
Clip to Bounds |
ウィジェットのバウンドにコンテンツをクリッピングします。以前にクリッピングされている領域のバウンドと交差します。 |
Clip to Bounds - Without Intersecting |
Clip to Bounds - Always |
Clip to Bounds - Always |
ウィジェットのバウンドにクリッピングします。以前にクリッピングされている領域のバウンドと交差します。 このクリッピング エリアは無視できません。常に子をクリップします。これはアニメーションや他のエフェクトによってこの領域を侵されたくない UI の境界で役立ちます。 |
On Demand |
このウィジェットは、Desired Size (望ましいサイズ) がウィジェットに割り当てられたジオメトリよりも大きい場合に、その境界にバウンドします。これが起きると、[Clip to Bounds]Text に追加されます。Text は多くの場合、コンテナに配置され、最終的にリサイズされてテキストの長さに対応できなくなります。テキストを含むすべてのコンテナに [YES] とタグ付けする必要なく (これはほぼバッチングなしの結果になります)、このモードは必要に応じてクリッピングを動的に調整するために追加されました。必ずしもすべてのものを On Demand |
その他の考慮事項
ほとんどの場合、テキストの長さを制御できず、クリッピングする必要がある場合を除いてクリッピング方法を調整する必要はありません。この例として、Scroll Box と Editable Text Widget があり、Inherit の代わりに [Clip to Bounds] に設定されています。
様々なクリッピング空間の要素をまとめて処理することはできません。そのため、クリッピングにはパフォーマンスの負荷を伴います。こうした理由から、パネルでバウンド外にコンテンツが表示されるのを防ぐ必要がない限り、クリッピングを有効にしないでください。