WebGLShadowMap constructor
WebGLShadowMap(
- WebGLRenderer _renderer,
- WebGLObjects _objects,
- WebGLCapabilities _capabilities
Implementation
WebGLShadowMap(this._renderer, this._objects, this._capabilities) {
_maxTextureSize = _capabilities.maxTextureSize;
_depthMaterial = MeshDepthMaterial({"depthPacking": RGBADepthPacking});
_distanceMaterial = MeshDistanceMaterial(null);
shadowMaterialVertical = ShaderMaterial({
"defines": {"VSM_SAMPLES": 8},
"uniforms": {
"shadow_pass": {"value": null},
"resolution": {"value": Vector2(null, null)},
"radius": {"value": 4.0}
},
"vertexShader": vsm_vert,
"fragmentShader": vsm_frag
});
var _float32List =
Float32Array.from([-1.0, -1.0, 0.5, 3.0, -1.0, 0.5, -1.0, 3.0, 0.5]);
fullScreenTri.setAttribute(
'position', Float32BufferAttribute(_float32List, 3, false));
fullScreenMesh = Mesh(fullScreenTri, shadowMaterialVertical);
shadowMaterialHorizontal = shadowMaterialVertical.clone();
shadowMaterialHorizontal.defines!["HORIZONTAL_PASS"] = 1;
scope = this;
}