fix the lights upload error in forward render
This commit is contained in:
@ -120,10 +120,10 @@ uniform DirectionalLight u_DirectionalLights;
|
||||
uniform vec3 u_CameraPosition;
|
||||
|
||||
uniform int u_PointLightCount;
|
||||
uniform PointLight u_PointLights;
|
||||
uniform PointLight u_PointLights[8];
|
||||
|
||||
uniform int u_SpotLightCount;
|
||||
uniform SpotLight u_SpotLights;
|
||||
uniform SpotLight u_SpotLights[8];
|
||||
|
||||
|
||||
// PBR
|
||||
@ -455,11 +455,19 @@ void main()
|
||||
vec3 lightContribution = u_DirectionalLights.Intensity > 0.0 ? Lighting(F0) * shadowFactor : vec3(0.0);
|
||||
|
||||
if(u_PointLightCount > 0)
|
||||
lightContribution += ComputePointLight(u_PointLights, F0, m_Params, vs_Input.WorldPosition);
|
||||
{
|
||||
for( int i = 0; i < u_PointLightCount; i ++) {
|
||||
lightContribution += ComputePointLight(u_PointLights[i], F0, m_Params, vs_Input.WorldPosition);
|
||||
}
|
||||
}
|
||||
|
||||
if(u_SpotLightCount > 0)
|
||||
lightContribution += ComputeSpotLight(u_SpotLights, F0, m_Params, vs_Input.WorldPosition);
|
||||
|
||||
{
|
||||
for(int i = 0; i < u_SpotLightCount; i ++)
|
||||
{
|
||||
lightContribution += ComputeSpotLight(u_SpotLights[i], F0, m_Params, vs_Input.WorldPosition);
|
||||
}
|
||||
}
|
||||
|
||||
vec3 iblContribution = IBL(F0, Lr) * u_IBLContribution;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user