|
@@ -15,7 +15,8 @@ THREE.ShaderLib = {
|
|
|
|
|
|
THREE.UniformsLib[ "common" ],
|
|
|
THREE.UniformsLib[ "aomap" ],
|
|
|
- THREE.UniformsLib[ "fog" ]
|
|
|
+ THREE.UniformsLib[ "fog" ],
|
|
|
+ THREE.UniformsLib[ "shadowmap" ]
|
|
|
|
|
|
] ),
|
|
|
|
|
@@ -28,6 +29,7 @@ THREE.ShaderLib = {
|
|
|
THREE.ShaderChunk[ "color_pars_vertex" ],
|
|
|
THREE.ShaderChunk[ "morphtarget_pars_vertex" ],
|
|
|
THREE.ShaderChunk[ "skinning_pars_vertex" ],
|
|
|
+ THREE.ShaderChunk[ "shadowmap_pars_vertex" ],
|
|
|
THREE.ShaderChunk[ "logdepthbuf_pars_vertex" ],
|
|
|
|
|
|
"void main() {",
|
|
@@ -54,6 +56,7 @@ THREE.ShaderLib = {
|
|
|
|
|
|
THREE.ShaderChunk[ "worldpos_vertex" ],
|
|
|
THREE.ShaderChunk[ "envmap_vertex" ],
|
|
|
+ THREE.ShaderChunk[ "shadowmap_vertex" ],
|
|
|
|
|
|
"}"
|
|
|
|
|
@@ -73,6 +76,7 @@ THREE.ShaderLib = {
|
|
|
THREE.ShaderChunk[ "aomap_pars_fragment" ],
|
|
|
THREE.ShaderChunk[ "envmap_pars_fragment" ],
|
|
|
THREE.ShaderChunk[ "fog_pars_fragment" ],
|
|
|
+ THREE.ShaderChunk[ "shadowmap_pars_fragment" ],
|
|
|
THREE.ShaderChunk[ "specularmap_pars_fragment" ],
|
|
|
THREE.ShaderChunk[ "logdepthbuf_pars_fragment" ],
|
|
|
|
|
@@ -81,6 +85,7 @@ THREE.ShaderLib = {
|
|
|
" vec3 outgoingLight = vec3( 0.0 );",
|
|
|
" vec4 diffuseColor = vec4( diffuse, opacity );",
|
|
|
" vec3 totalAmbientLight = vec3( 1.0 );", // hardwired
|
|
|
+ " vec3 shadowMask = vec3( 1.0 );",
|
|
|
|
|
|
THREE.ShaderChunk[ "logdepthbuf_fragment" ],
|
|
|
THREE.ShaderChunk[ "map_fragment" ],
|
|
@@ -89,8 +94,9 @@ THREE.ShaderLib = {
|
|
|
THREE.ShaderChunk[ "alphatest_fragment" ],
|
|
|
THREE.ShaderChunk[ "specularmap_fragment" ],
|
|
|
THREE.ShaderChunk[ "aomap_fragment" ],
|
|
|
+ THREE.ShaderChunk[ "shadowmap_fragment" ],
|
|
|
|
|
|
- " outgoingLight = diffuseColor.rgb * totalAmbientLight;",
|
|
|
+ " outgoingLight = diffuseColor.rgb * totalAmbientLight * shadowMask;",
|
|
|
|
|
|
THREE.ShaderChunk[ "envmap_fragment" ],
|
|
|
|