ShaderData.Pass.PreprocessVariant
Declaration
public ShaderData.PreprocessedVariant PreprocessVariant(Rendering.ShaderType shaderType, string[] keywords, Rendering.ShaderCompilerPlatform shaderCompilerPlatform, BuildTarget buildTarget, bool stripLineDirectives);public ShaderData.PreprocessedVariant PreprocessVariant(Rendering.ShaderType shaderType, string[] keywords, Rendering.ShaderCompilerPlatform shaderCompilerPlatform, BuildTarget buildTarget, Rendering.GraphicsTier tier, bool stripLineDirectives);public ShaderData.PreprocessedVariant PreprocessVariant(Rendering.ShaderType shaderType, string[] keywords, Rendering.ShaderCompilerPlatform shaderCompilerPlatform, BuildTarget buildTarget, BuiltinShaderDefine[] platformKeywords, bool stripLineDirectives);public ShaderData.PreprocessedVariant PreprocessVariant(Rendering.ShaderType shaderType, string[] keywords, Rendering.ShaderCompilerPlatform shaderCompilerPlatform, BuildTarget buildTarget, BuiltinShaderDefine[] platformKeywords, Rendering.GraphicsTier tier, bool stripLineDirectives);Параметры
| Параметр | Описание |
|---|---|
| shaderType | Тип шейдера в этом проходе для предварительной обработки. (e.g. Vertex, Fragment, и т.д.) Некоторые платформы (OpenGLCore, GLES3x, Switch и Vulkan) включают все стадии в рамках типа шейдера Vertex. |
| ключевые слова | Ключевые слова, используемые во время предварительной обработки. |
| shaderCompilerPlatform | Платформа компилятора шейдеров для предварительной обработки. |
| buildTarget | Конечный объект сборки для предварительной обработки. |
| уровня | Необязательный графический уровень. |
| platformKeywords | Необязательный набор ключевых слов платформы. Если вы не указываете их, Unity использует ключевые слова по умолчанию для указанной платформы, цели и уровня. |
| stripLineDirectives | Пропускать ли директивы номера строки в предварительно обработанном выводе. При включении, Unity производит предварительно обработанный исходный код, более читаемый человеком, и пропускает директивы строки, когда имя файла не меняется. В противном случае, этот метод производит точно предварительно обработанный исходный код, который Unity передает компилятору. |
Возвращаемое значение
PreprocessedVariant Предварительно обработанный вариант результата. Если пропуск не включает запрошенную программу, или если пропуск не является правильным типом, эта функция всё равно успешно выполняется, но возвращает пустую предварительно обработанную программу.
Описание
Предварительно обрабатывает вариант шейдера для этого прохода шейдера и возвращает предварительно обработанный код.