URP におけるマスクについて
最終更新: 2026年1月8日
このページにはベータ版に関する記述が含まれます。
Cubism 5 SDK for Unity R5 beta3 ではレンダリングパイプラインが Universal Rendering Pipeline (以下、URP)へ移行したことに伴い、マスク機能の仕組みが変更となりました。
R4_1 からの変更点
- 全てのモデルが高精細マスク方式を利用します。
- これまで利用していた Assets/Live2D/Cubism/Rendering/Masking をはじめとしたマスク用のコンポーネントは利用されなくなり、パフォーマンスの観点から削除されています。
- R4_1 からアップデートする場合、削除しない限りコンポーネントはプロジェクトに残りますが各コンポーネントはモデルからは利用されなくなります。なお、CubismMaskController コンポーネントはMonoBehaviorであるため、処理を止めるにはモデルのプレハブから明示的に削除する必要があります。
- 削除されるコンポーネントの位置や移行方法については「Built-in Render PipelineからURPへの移行について」をご確認ください。
高精細マスク方式
高精細マスク方式は描画オブジェクトを描画する直前に毎回その描画オブジェクトが利用するマスクの描画処理を行う方式です。
パフォーマンスよりも描画のクオリティを重視した方式で、R4_1以前のマスク方式と比べて下記の利点があります。
- マスク使用数の上限が無制限になる。
- マスク用のテクスチャは画面解像度の1つのみを利用するため、メモリ使用量が低下する。
- マスクは分割されず1枚のテクスチャに順番に描画されるため、マスク描画のクオリティが向上する。
ただし、下記のようなデメリットがあります。
- 同一のアートメッシュをマスクに設定している場合でも個別のタイミングで描画される。
- この影響で特に同一のアートメッシュを利用している場合のパフォーマンスがR4_1以前のマスク方式と比べて低下します。
- マスクの描画サイズがカメラのレンダーターゲットのサイズで固定されるため、モデルを映しているレンダーターゲットのサイズによってパフォーマンスへの影響が大きくなることがある。
オフスクリーン描画におけるマスクについて
オフスクリーン描画に適用されるマスクはシェーダーでの計算の都合上、アートメッシュをクリッピング対象とする場合と異なり、マスクとして設定されているアートメッシュが画面上で描画される位置とサイズで描画及び適用されます。
Cubsim モデルが描画されるカメラの RenderTexture が画面の解像度と同じかつ画面全体に表示されるレンダーターゲットが同一の場合、必要なピクセル数が確保された状態(ドットバイドット)で描画されるため、描画結果が劣化することはありません。
この記事はお役に立ちましたか?
はいいいえ