【Unity URP罠】ライトのCulling Maskが効かない?原因はレンダリングパスの「Forward+」かも!

URP カリングマスク レイヤーマスク 動作しない Unity
※記事内に広告が含まれています。

バーチャル3Dクリエイター神部まゆみです(*^_^*)

この記事はURPのカリングマスクについての記事です。

カリングマスクについてはこちらを参照。

動かしたバージョンはunity6000.0.32です。

●PRスペース●
■PR■

現在、TPSシステム系アセットが50%オフで買える Unityパブリッシャーセール をやってるみたいです(2025/09/12 23:59まで)。

Unity パブリッシャーセール 50%オフ

クーポンコード FANTACODESTUDIOS を使うと、↓のロープスイングシステムがタダで貰えます(決済時にクーポンコード入力適用で0円に)。

unity ロープスイングシステム

無料アセットだけでも貰っておくと良いかも。

〇まゆみマート|BOOTH

BOOTHでVRoidテクスチャやVRChat向けオブジェクトなどを販売しています。いいねしてくれると励みになります(*^-^*)

症状:URPでカリングマスクを使おうとしたらダメだった

BIRPだと普通にカリングマスクが使えて、レイヤーごとにライトを照らすかどうかを選べた。

しかしURPでやったらダメでした。

ChatGPTに聞いたらレンダリングレイヤー(ライトマスク)ってやつを使わないといけないとか?

カリングマスク使えないのかなあ…。

原因:カリングマスクはレンダリングパスForward+では使えないっぽい

unity2022.3.22のURPでカリングマスクを使ったらちゃんと動いたんだけど、そう警告が出てた。

URP カリングマスク レイヤーマスク 動作しない

Calling Mask only works with Forward rendering. Instead, use Rendering Layers on the Light, and Rendering Layer Mask on the Mesh Renderer, which will work across Deferred, Forward, and Forward+ rendering.

カリングマスクの呼び出しはフォワードレンダリングでのみ機能します。代わりに、ライトではレンダリングレイヤー、メッシュレンダラーではレンダリングレイヤーマスクを使用してください。これらは、ディファードレンダリング、フォワードレンダリング、フォワード+レンダリングで機能します。

マジか知らなかったΣ(゚Д゚)

unity6000.0.32のデフォルトはForward+、unity2022.3.22はForwardだった

unity6の他のバージョンでは試してないけど、少なくともunity6000.0.32ではForward+がデフォルトになってましたね。

↓unity6000.0.32でカリングマスクを使うにはレンダリングパスをForwardに切り替えればいいみたい。

解決 これで動いた

これでunity6000.0.32でもカリングマスクが使えました。

まぁ今後はForward+が標準になっていくのかな?

レンダリングレイヤーっていうやつに慣れた方が良いんだろうけど、しばらくはこれで行ってみます。

タイトルとURLをコピーしました