mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-29 09:32:45 +00:00
clamp vertex lighting in fragment shader properly
This commit is contained in:
parent
a707f5b0e0
commit
276cb6f170
@ -112,6 +112,7 @@
|
|||||||
Bug #6670: Dialogue order is incorrect
|
Bug #6670: Dialogue order is incorrect
|
||||||
Bug #6680: object.cpp handles nodetree unsafely, memory access with dangling pointer
|
Bug #6680: object.cpp handles nodetree unsafely, memory access with dangling pointer
|
||||||
Bug #6682: HitOnMe doesn't fire as intended
|
Bug #6682: HitOnMe doesn't fire as intended
|
||||||
|
Bug #6697: Shaders vertex lighting incorrectly clamped
|
||||||
Bug #6711: Log time differs from real time
|
Bug #6711: Log time differs from real time
|
||||||
Feature #890: OpenMW-CS: Column filtering
|
Feature #890: OpenMW-CS: Column filtering
|
||||||
Feature #1465: "Reset" argument for AI functions
|
Feature #1465: "Reset" argument for AI functions
|
||||||
|
@ -73,9 +73,10 @@ void main()
|
|||||||
vec3 diffuseLight, ambientLight;
|
vec3 diffuseLight, ambientLight;
|
||||||
doLighting(passViewPos, normalize(viewNormal), shadowing, diffuseLight, ambientLight);
|
doLighting(passViewPos, normalize(viewNormal), shadowing, diffuseLight, ambientLight);
|
||||||
lighting = diffuseLight + ambientLight;
|
lighting = diffuseLight + ambientLight;
|
||||||
clampLightingResult(lighting);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
clampLightingResult(lighting);
|
||||||
|
|
||||||
gl_FragData[0].xyz *= lighting;
|
gl_FragData[0].xyz *= lighting;
|
||||||
|
|
||||||
#if @radialFog
|
#if @radialFog
|
||||||
|
@ -194,9 +194,10 @@ void main()
|
|||||||
doLighting(passViewPos, normalize(viewNormal), shadowing, diffuseLight, ambientLight);
|
doLighting(passViewPos, normalize(viewNormal), shadowing, diffuseLight, ambientLight);
|
||||||
vec3 emission = getEmissionColor().xyz * emissiveMult;
|
vec3 emission = getEmissionColor().xyz * emissiveMult;
|
||||||
lighting = diffuseColor.xyz * diffuseLight + getAmbientColor().xyz * ambientLight + emission;
|
lighting = diffuseColor.xyz * diffuseLight + getAmbientColor().xyz * ambientLight + emission;
|
||||||
clampLightingResult(lighting);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
clampLightingResult(lighting);
|
||||||
|
|
||||||
gl_FragData[0].xyz *= lighting;
|
gl_FragData[0].xyz *= lighting;
|
||||||
|
|
||||||
#if @envMap && !@preLightEnv
|
#if @envMap && !@preLightEnv
|
||||||
|
@ -87,9 +87,10 @@ void main()
|
|||||||
vec3 diffuseLight, ambientLight;
|
vec3 diffuseLight, ambientLight;
|
||||||
doLighting(passViewPos, normalize(viewNormal), shadowing, diffuseLight, ambientLight);
|
doLighting(passViewPos, normalize(viewNormal), shadowing, diffuseLight, ambientLight);
|
||||||
lighting = diffuseColor.xyz * diffuseLight + getAmbientColor().xyz * ambientLight + getEmissionColor().xyz;
|
lighting = diffuseColor.xyz * diffuseLight + getAmbientColor().xyz * ambientLight + getEmissionColor().xyz;
|
||||||
clampLightingResult(lighting);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
clampLightingResult(lighting);
|
||||||
|
|
||||||
gl_FragData[0].xyz *= lighting;
|
gl_FragData[0].xyz *= lighting;
|
||||||
|
|
||||||
#if @specularMap
|
#if @specularMap
|
||||||
|
Loading…
x
Reference in New Issue
Block a user