コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】範囲外を映さないシェーダを導入する

はじめに

http://www.shaderslab.com/demo-09---stencil-effect-invisible-crate.html

この記事では上記のサイト様が公開されている
範囲外を映さないシェーダを導入する方法を紹介していきます

使用例

f:id:baba_s:20180805232918g:plain

使い方

上記のシェーダファイルを Unity プロジェクトに追加します

f:id:baba_s:20180805193351p:plain

Project ビューの「Create>Material」を 2 回選択します

f:id:baba_s:20180805232249p:plain

作成した 2 つのマテリアルの Shader をそれぞれ「Custom/StencilEffect」と

f:id:baba_s:20180805232258p:plain

「Custom/Mask」に変更します

f:id:baba_s:20180805232603p:plain

Hierarchy の「Create>3D Object>Quad」を選択して Quad オブジェクトを作成して

f:id:baba_s:20180805232632p:plain

作成した Quad オブジェクトに「Custom/Mask」のマテリアルを設定します

f:id:baba_s:20180805232515p:plain

そして、範囲外なら映したくないオブジェクトに
「Custom/StencilEffect」のマテリアルを設定します

f:id:baba_s:20180805232918g:plain

これで、シェーダを使用できます

関連記事