MoruToon Shader / Stencil
🚪
Stencil
ポータル・マスキング
ステンシルバッファで特定領域だけに描画。ポータルや覗き穴などの高度な表現に。
📖 詳細解説
Stencilはステンシルバッファを使用して、描画領域を制限します。
基本的な使い方: 1. マスク用オブジェクト(見えない板等)のStencil Referenceを書き込み 2. パーティクル側でStencil Compare=Equalにして同じReference値を指定 3. すると、マスクオブジェクトが書き込んだ領域内だけにパーティクルが描画される
これでポータル越しにパーティクルが見える、特定の穴からだけ見える演出が可能です。
📊 パラメータ早見表
| プロパティ | 型 | 説明 |
|---|---|---|
| Stencil Reference | Range(0-255) | 参照値。通常1を使用 |
| Stencil Compare | Enum | 比較関数。Always/Equal/NotEqual等 |
| Stencil Pass | Enum | 成功時の操作。Replace/Keep等 |
🎯 使い方・ユースケース
ポータルギミックの作成
- ポータル枠の形をしたマスク用オブジェクト(Cube等)を配置
- マスク用オブジェクトのマテリアルで Stencil Reference=1, Pass=Replace に設定
- パーティクル側の Stencil Reference=1, Compare=Equal に設定
- マスク用オブジェクトのMesh Rendererを無効化(見えなくする)
💡 Tips
- ポータルを作る場合、マスク用オブジェクトのStencil Pass=Replace、パーティクル側はStencil Compare=Equalにします。
- 複数のステンシルを使い分ける場合、Reference値を変える(1, 2, 3...)ことで独立した領域を作れます。