LoginSignup
0
0

【Unity】URPのCustom Shaderで影を落とす方法【URP】

Posted at

自己紹介

URPのShaderLabの記事少なすぎ問題を提唱したい大学生

今回の題材

とあるサイトを参考にToonShaderを書いていたのですが、影が落ちない。
影落とすにはどうするんかなーと思って、色々調べてたのですがなぜか日本語の記事1個もなかったので、日本語の記事書きます。

実は超簡単

Pass {
    Name "ShadowCaster"
    Tags { "LightMode"="ShadowCaster" }

    ZWrite On
    ZTest LEqual

    HLSLPROGRAM
    #pragma vertex ShadowPassVertex
    #pragma fragment ShadowPassFragment

    #pragma shader_feature _ALPHATEST_ON
    #pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A

    #pragma multi_compile_instancing
    
    #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl"
    #include "Packages/com.unity.render-pipelines.universal/Shaders/ShadowCasterPass.hlsl"
    ENDHLSL
}

上記のコードを2つ目のPassとして記述するだけです。
これはURPのShadowCasterPass.hlslに記述されているシェーダーを呼び出すだけのことをしています。

おわり

こんだけ。誰かが救われますように()

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0