Объявление
public static void DisableKeyword(ref Rendering.GlobalKeyword keyword);public static void DisableKeyword(string keyword);
Параметры
keyword | Отключаемое GlobalKeyword. |
keyword | Имя GlobalKeyword для отключения. |
Описание
Отключает глобальное ключевое слово шейдера.
Ключевые слова шейдера определяют, какие варианты шейдера использует Unity. Информацию о работе с ключевыми словами локального шейдера и глобальном ключевом слове шейдера и о том, как они взаимодействуют, см. в разделе Использование ключевых слов шейдера со сценариями C#.
Если вы передаете строку, а GlobalKeyword с заданным именем не существует, эта функция не действует.
Версия этой функции, принимающая в качестве параметра строку, работает медленнее, чем версия, принимающая GlobalKeyword. Если вы вызываете эту функцию более одного раза, рекомендуется создать структуру GlobalKeyword, кэшировать ее и использовать.
В следующем примере создается структура GlobalKeyword
с именем EXAMPLE_FEATURE_ON
и кэшируется. Он предоставляет функции для его включения и отключения.
using UnityEngine;
using UnityEngine.Rendering;
public class GlobalKeywordExample : MonoBehaviour
{
private GlobalKeyword exampleFeatureKeyword;
private void Start()
{
var exampleFeatureKeyword = GlobalKeyword.Create("EXAMPLE_FEATURE_ON");
}
public void EnableExampleFeature()
{
Shader.EnableKeyword(exampleFeatureKeyword);
}
public void DisableExampleFeature()
{
Shader.DisableKeyword(exampleFeatureKeyword);
}
}
Смотрите так же: Shader variants and keywords, LocalKeyword, GlobalKeyword, EnableKeyword, SetKeyword, IsKeywordEnabled, enabledGlobalKeywords, globalKeywords.