Version: 2021.3
言語: 日本語
public void SetOverrideTag (string tag, string val);

パラメーター

tag 設定するタグの名前
val 設定する値の名前。上書きフラグをクリアする空の文字列。

説明

マテリアルの Tag/Value を上書きに設定します

シェーダーから当該するタグの値を上書きするマテリアルの Tag/Value を設定します。たとえ元のシェーダーが特定のレンダー型のみサポートしている場合でも、シェーダーの機能(DepthNormals のレンダリングなど) を確認して置き換えるために使用できます。たとえば、シェーダーが特定のレンダーの型のみをサポートするが、キーワードを使用してさまざまな方法でレンダリングする場合、シェーダーが置き換えられた場合でもマテリアルが正しく表示されることを確認するカスタムのマテリアルインスペクターから SetOverrideTag が使用できます。

using UnityEngine;

public static class MaterialUtils { public enum BlendMode { Opaque, Cutout, Fade, Transparent }

public static void SetupBlendMode(Material material, BlendMode blendMode) { switch (blendMode) { case BlendMode.Opaque: material.SetOverrideTag("RenderType", ""); material.DisableKeyword("_ALPHATEST_ON"); material.renderQueue = -1; break; case BlendMode.Cutout: material.SetOverrideTag("RenderType", "TransparentCutout"); material.EnableKeyword("_ALPHATEST_ON"); material.renderQueue = 2450; break; } } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961