public override void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry) { foreach (var cubemap in lightShaderGroupsPerVoxel) { shaderEntry.EnvironmentLights.Add(cubemap.Value); } }
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) { shaderEntry.DirectLightGroups.Add(lightShaderGroup.Value); } }
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.DirectLightGroups.Add(pointGroup); shaderEntry.DirectLightGroups.Add(spotGroup); }
public abstract void UpdateShaderPermutationEntry(ForwardLightingRenderFeature.LightShaderPermutationEntry shaderEntry);