Changeset View
Changeset View
Standalone View
Standalone View
source/blender/gpu/shaders/gpu_shader_material.glsl
| Show First 20 Lines • Show All 2,093 Lines • ▼ Show 20 Lines | void shade_light_texture(vec3 rco, sampler2D cookie, mat4 shadowpersmat, out vec4 result) | ||||
| result = texture2DProj(cookie, co); | result = texture2DProj(cookie, co); | ||||
| } | } | ||||
| void shade_exposure_correct(vec3 col, float linfac, float logfac, out vec3 outcol) | void shade_exposure_correct(vec3 col, float linfac, float logfac, out vec3 outcol) | ||||
| { | { | ||||
| outcol = linfac*(1.0 - exp(col*logfac)); | outcol = linfac*(1.0 - exp(col*logfac)); | ||||
| } | } | ||||
| void shade_mist_factor(vec3 co, float miststa, float mistdist, float misttype, float misi, out float outfac) | void shade_mist_factor(vec3 co, float enable, float miststa, float mistdist, float misttype, float misi, out float outfac) | ||||
| { | { | ||||
| if(enable == 1.0) { | |||||
| float fac, zcor; | float fac, zcor; | ||||
| zcor = (gl_ProjectionMatrix[3][3] == 0.0)? length(co): -co[2]; | zcor = (gl_ProjectionMatrix[3][3] == 0.0)? length(co): -co[2]; | ||||
| fac = clamp((zcor-miststa)/mistdist, 0.0, 1.0); | fac = clamp((zcor - miststa) / mistdist, 0.0, 1.0); | ||||
| if(misttype == 0.0) fac *= fac; | if(misttype == 0.0) fac *= fac; | ||||
| else if(misttype == 1.0); | else if(misttype == 1.0); | ||||
| else fac = sqrt(fac); | else fac = sqrt(fac); | ||||
| outfac = 1.0 - (1.0-fac)*(1.0-misi); | outfac = 1.0 - (1.0 - fac) * (1.0 - misi); | ||||
| } | } | ||||
| else { | |||||
| outfac = 0.0; | |||||
| } | |||||
| } | |||||
| void shade_world_mix(vec3 hor, vec4 col, out vec4 outcol) | void shade_world_mix(vec3 hor, vec4 col, out vec4 outcol) | ||||
| { | { | ||||
| float fac = clamp(col.a, 0.0, 1.0); | float fac = clamp(col.a, 0.0, 1.0); | ||||
| outcol = vec4(mix(hor, col.rgb, fac), col.a); | outcol = vec4(mix(hor, col.rgb, fac), col.a); | ||||
| } | } | ||||
| void shade_alpha_opaque(vec4 col, out vec4 outcol) | void shade_alpha_opaque(vec4 col, out vec4 outcol) | ||||
| ▲ Show 20 Lines • Show All 468 Lines • Show Last 20 Lines | |||||