版本: Unity 6 (6000.0)
语言英语
  • C#

ShaderData.Pass.PreprocessVariant

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议的更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

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 要预处理的此通道中的着色器类型。(例如,顶点、片段等)某些平台(OpenGLCore、GLES3x、Switch 和 Vulkan)将所有阶段包含在顶点着色器类型中。
keywords 预处理期间要使用的关键字。
shaderCompilerPlatform 要为其预处理的着色器编译器平台。
buildTarget 要为其预处理的构建目标。
tier 可选的图形层级。
platformKeywords 可选的一组平台关键字。如果您不提供任何关键字,Unity 将使用给定平台、目标和层级的默认关键字。
stripLineDirectives 是否跳过预处理输出中的行号指令。启用后,Unity 会生成更易读的预处理源代码,并在文件名未更改时跳过行号指令。否则,此方法会生成 Unity 传递给编译器的精确预处理源代码。

返回值

PreprocessedVariant 预处理变体结果。如果通道不包含请求的程序,或者通道不是正确的类型,此函数仍然会成功,但会返回空的预处理代码。

描述

预处理此着色器通道的着色器变体,并返回预处理的代码。