Version: Unity 6.5 Alpha (6000.5)
LanguageEnglish
  • C#

GraphicsStateCollection.AddVariants

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public bool AddVariants(Material mat, int subshaderIndex = -1);

Declaration

public bool AddVariants(Material mat, GlobalKeyword[] globalKeywords, int subshaderIndex = -1);

Parameters

Parameter Description
material Material with the shader and enabled keywords used in the variant.
globalKeywords GlobalKeyword array of global keywords to use with the material's enabled keywords in the variants.
subshaderIndex The index of the subshader within the shader used in the variant.

Returns

bool True if at least one new variant was added, false otherwise.

Description

Adds one or more new shader variants to the collection.

If subshaderIndex is not specified, then one ShaderVariant will attempt to be added for each shader pass in every SubShader of the material parameter's Shader. Otherwise, at most Shader.GetPassCountInSubshader number of variants will be added using the specified subshaderIndex.

All generated shader variants will use the set of Material.enabledKeywords combined with the global shader keywords that are currently enabled in the active context, unless explicitly provided via globalKeywords. Additional resources: AddVariant, RemoveVariant, ContainsVariant.