public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { // TODO: Some kind of sort? foreach (var cubemap in lightShaderGroupsPerSkybox) { shaderEntry.EnvironmentLights.Add(cubemap.Value); } }
public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { // Sort to make sure we generate the same permutations lightShaderGroups.Sort(LightShaderGroupComparer.Default); foreach (var lightShaderGroup in lightShaderGroups) { if (IsEnvironmentLight) { shaderEntry.EnvironmentLights.Add(lightShaderGroup.Value); } else { shaderEntry.DirectLightGroups.Add(lightShaderGroup.Value); } } }
public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { shaderEntry.DirectLightGroups.Add(pointGroup); shaderEntry.DirectLightGroups.Add(spotGroup); }
public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { }
public abstract void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry);
public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { // Always merge ambient lighting code to avoid shader permutations shaderEntry.EnvironmentLights.Add(lightShaderGroup); }
public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { shaderEntry.EnvironmentLights.Add(lightShaderGroup); }