@@ -14,6 +14,7 @@ THREE.ShaderLib = {
1414 uniforms : THREE . UniformsUtils . merge ( [
1515
1616 THREE . UniformsLib [ "common" ] ,
17+ THREE . UniformsLib [ "aomap" ] ,
1718 THREE . UniformsLib [ "fog" ] ,
1819 THREE . UniformsLib [ "shadowmap" ]
1920
@@ -70,6 +71,7 @@ THREE.ShaderLib = {
7071 THREE . ShaderChunk [ "uv2_pars_fragment" ] ,
7172 THREE . ShaderChunk [ "map_pars_fragment" ] ,
7273 THREE . ShaderChunk [ "alphamap_pars_fragment" ] ,
74+ THREE . ShaderChunk [ "aomap_pars_fragment" ] ,
7375 THREE . ShaderChunk [ "envmap_pars_fragment" ] ,
7476 THREE . ShaderChunk [ "fog_pars_fragment" ] ,
7577 THREE . ShaderChunk [ "shadowmap_pars_fragment" ] ,
@@ -78,17 +80,19 @@ THREE.ShaderLib = {
7880
7981 "void main() {" ,
8082
81- " vec3 outgoingLight = vec3( 0.0 );" , // outgoing light does not have an alpha, the surface does
83+ " vec3 outgoingLight = vec3( 0.0 );" ,
8284 " vec4 diffuseColor = vec4( diffuse, opacity );" ,
85+ " vec3 totalAmbientLight = vec3( 1.0 );" , // hardwired
8386
8487 THREE . ShaderChunk [ "logdepthbuf_fragment" ] ,
8588 THREE . ShaderChunk [ "map_fragment" ] ,
8689 THREE . ShaderChunk [ "color_fragment" ] ,
8790 THREE . ShaderChunk [ "alphamap_fragment" ] ,
8891 THREE . ShaderChunk [ "alphatest_fragment" ] ,
8992 THREE . ShaderChunk [ "specularmap_fragment" ] ,
93+ THREE . ShaderChunk [ "aomap_fragment" ] ,
9094
91- " outgoingLight = diffuseColor.rgb;" , // simple shader
95+ " outgoingLight = diffuseColor.rgb * totalAmbientLight ;" , // simple shader
9296
9397 THREE . ShaderChunk [ "envmap_fragment" ] ,
9498 THREE . ShaderChunk [ "shadowmap_fragment" ] , // TODO: Shadows on an otherwise unlit surface doesn't make sense.
0 commit comments