|
@@ -486,7 +486,7 @@ var MathUtils = /*#__PURE__*/Object.freeze({
|
|
|
|
|
|
class Vector2 {
|
|
class Vector2 {
|
|
constructor(x = 0, y = 0) {
|
|
constructor(x = 0, y = 0) {
|
|
- this.isVector2 = true;
|
|
|
|
|
|
+ Vector2.prototype.isVector2 = true;
|
|
this.x = x;
|
|
this.x = x;
|
|
this.y = y;
|
|
this.y = y;
|
|
}
|
|
}
|
|
@@ -823,7 +823,7 @@ class Vector2 {
|
|
|
|
|
|
class Matrix3 {
|
|
class Matrix3 {
|
|
constructor() {
|
|
constructor() {
|
|
- this.isMatrix3 = true;
|
|
|
|
|
|
+ Matrix3.prototype.isMatrix3 = true;
|
|
this.elements = [1, 0, 0, 0, 1, 0, 0, 0, 1];
|
|
this.elements = [1, 0, 0, 0, 1, 0, 0, 0, 1];
|
|
|
|
|
|
if (arguments.length > 0) {
|
|
if (arguments.length > 0) {
|
|
@@ -2116,7 +2116,7 @@ Texture.DEFAULT_MAPPING = UVMapping;
|
|
|
|
|
|
class Vector4 {
|
|
class Vector4 {
|
|
constructor(x = 0, y = 0, z = 0, w = 1) {
|
|
constructor(x = 0, y = 0, z = 0, w = 1) {
|
|
- this.isVector4 = true;
|
|
|
|
|
|
+ Vector4.prototype.isVector4 = true;
|
|
this.x = x;
|
|
this.x = x;
|
|
this.y = y;
|
|
this.y = y;
|
|
this.z = z;
|
|
this.z = z;
|
|
@@ -3347,7 +3347,7 @@ class Quaternion {
|
|
|
|
|
|
class Vector3 {
|
|
class Vector3 {
|
|
constructor(x = 0, y = 0, z = 0) {
|
|
constructor(x = 0, y = 0, z = 0) {
|
|
- this.isVector3 = true;
|
|
|
|
|
|
+ Vector3.prototype.isVector3 = true;
|
|
this.x = x;
|
|
this.x = x;
|
|
this.y = y;
|
|
this.y = y;
|
|
this.z = z;
|
|
this.z = z;
|
|
@@ -4810,7 +4810,7 @@ class Ray {
|
|
|
|
|
|
class Matrix4 {
|
|
class Matrix4 {
|
|
constructor() {
|
|
constructor() {
|
|
- this.isMatrix4 = true;
|
|
|
|
|
|
+ Matrix4.prototype.isMatrix4 = true;
|
|
this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
|
|
this.elements = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
|
|
|
|
|
|
if (arguments.length > 0) {
|
|
if (arguments.length > 0) {
|
|
@@ -10227,7 +10227,7 @@ const ShaderChunk = {
|
|
const UniformsLib = {
|
|
const UniformsLib = {
|
|
common: {
|
|
common: {
|
|
diffuse: {
|
|
diffuse: {
|
|
- value: new Color(0xffffff)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0xffffff)
|
|
},
|
|
},
|
|
opacity: {
|
|
opacity: {
|
|
value: 1.0
|
|
value: 1.0
|
|
@@ -10236,10 +10236,10 @@ const UniformsLib = {
|
|
value: null
|
|
value: null
|
|
},
|
|
},
|
|
uvTransform: {
|
|
uvTransform: {
|
|
- value: new Matrix3()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Matrix3()
|
|
},
|
|
},
|
|
uv2Transform: {
|
|
uv2Transform: {
|
|
- value: new Matrix3()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Matrix3()
|
|
},
|
|
},
|
|
alphaMap: {
|
|
alphaMap: {
|
|
value: null
|
|
value: null
|
|
@@ -10307,7 +10307,7 @@ const UniformsLib = {
|
|
value: null
|
|
value: null
|
|
},
|
|
},
|
|
normalScale: {
|
|
normalScale: {
|
|
- value: new Vector2(1, 1)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Vector2(1, 1)
|
|
}
|
|
}
|
|
},
|
|
},
|
|
displacementmap: {
|
|
displacementmap: {
|
|
@@ -10347,7 +10347,7 @@ const UniformsLib = {
|
|
value: 2000
|
|
value: 2000
|
|
},
|
|
},
|
|
fogColor: {
|
|
fogColor: {
|
|
- value: new Color(0xffffff)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0xffffff)
|
|
}
|
|
}
|
|
},
|
|
},
|
|
lights: {
|
|
lights: {
|
|
@@ -10459,7 +10459,7 @@ const UniformsLib = {
|
|
},
|
|
},
|
|
points: {
|
|
points: {
|
|
diffuse: {
|
|
diffuse: {
|
|
- value: new Color(0xffffff)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0xffffff)
|
|
},
|
|
},
|
|
opacity: {
|
|
opacity: {
|
|
value: 1.0
|
|
value: 1.0
|
|
@@ -10480,18 +10480,18 @@ const UniformsLib = {
|
|
value: 0
|
|
value: 0
|
|
},
|
|
},
|
|
uvTransform: {
|
|
uvTransform: {
|
|
- value: new Matrix3()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Matrix3()
|
|
}
|
|
}
|
|
},
|
|
},
|
|
sprite: {
|
|
sprite: {
|
|
diffuse: {
|
|
diffuse: {
|
|
- value: new Color(0xffffff)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0xffffff)
|
|
},
|
|
},
|
|
opacity: {
|
|
opacity: {
|
|
value: 1.0
|
|
value: 1.0
|
|
},
|
|
},
|
|
center: {
|
|
center: {
|
|
- value: new Vector2(0.5, 0.5)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Vector2(0.5, 0.5)
|
|
},
|
|
},
|
|
rotation: {
|
|
rotation: {
|
|
value: 0.0
|
|
value: 0.0
|
|
@@ -10506,33 +10506,33 @@ const UniformsLib = {
|
|
value: 0
|
|
value: 0
|
|
},
|
|
},
|
|
uvTransform: {
|
|
uvTransform: {
|
|
- value: new Matrix3()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Matrix3()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
};
|
|
|
|
|
|
const ShaderLib = {
|
|
const ShaderLib = {
|
|
basic: {
|
|
basic: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.specularmap, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.fog]),
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.specularmap, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.fog]),
|
|
vertexShader: ShaderChunk.meshbasic_vert,
|
|
vertexShader: ShaderChunk.meshbasic_vert,
|
|
fragmentShader: ShaderChunk.meshbasic_frag
|
|
fragmentShader: ShaderChunk.meshbasic_frag
|
|
},
|
|
},
|
|
lambert: {
|
|
lambert: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.specularmap, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.fog, UniformsLib.lights, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.specularmap, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.fog, UniformsLib.lights, {
|
|
emissive: {
|
|
emissive: {
|
|
- value: new Color(0x000000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x000000)
|
|
}
|
|
}
|
|
}]),
|
|
}]),
|
|
vertexShader: ShaderChunk.meshlambert_vert,
|
|
vertexShader: ShaderChunk.meshlambert_vert,
|
|
fragmentShader: ShaderChunk.meshlambert_frag
|
|
fragmentShader: ShaderChunk.meshlambert_frag
|
|
},
|
|
},
|
|
phong: {
|
|
phong: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.specularmap, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.fog, UniformsLib.lights, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.specularmap, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.fog, UniformsLib.lights, {
|
|
emissive: {
|
|
emissive: {
|
|
- value: new Color(0x000000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x000000)
|
|
},
|
|
},
|
|
specular: {
|
|
specular: {
|
|
- value: new Color(0x111111)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x111111)
|
|
},
|
|
},
|
|
shininess: {
|
|
shininess: {
|
|
value: 30
|
|
value: 30
|
|
@@ -10542,9 +10542,9 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.meshphong_frag
|
|
fragmentShader: ShaderChunk.meshphong_frag
|
|
},
|
|
},
|
|
standard: {
|
|
standard: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.roughnessmap, UniformsLib.metalnessmap, UniformsLib.fog, UniformsLib.lights, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.envmap, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.roughnessmap, UniformsLib.metalnessmap, UniformsLib.fog, UniformsLib.lights, {
|
|
emissive: {
|
|
emissive: {
|
|
- value: new Color(0x000000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x000000)
|
|
},
|
|
},
|
|
roughness: {
|
|
roughness: {
|
|
value: 1.0
|
|
value: 1.0
|
|
@@ -10561,16 +10561,16 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.meshphysical_frag
|
|
fragmentShader: ShaderChunk.meshphysical_frag
|
|
},
|
|
},
|
|
toon: {
|
|
toon: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.gradientmap, UniformsLib.fog, UniformsLib.lights, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.aomap, UniformsLib.lightmap, UniformsLib.emissivemap, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.gradientmap, UniformsLib.fog, UniformsLib.lights, {
|
|
emissive: {
|
|
emissive: {
|
|
- value: new Color(0x000000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x000000)
|
|
}
|
|
}
|
|
}]),
|
|
}]),
|
|
vertexShader: ShaderChunk.meshtoon_vert,
|
|
vertexShader: ShaderChunk.meshtoon_vert,
|
|
fragmentShader: ShaderChunk.meshtoon_frag
|
|
fragmentShader: ShaderChunk.meshtoon_frag
|
|
},
|
|
},
|
|
matcap: {
|
|
matcap: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.fog, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, UniformsLib.fog, {
|
|
matcap: {
|
|
matcap: {
|
|
value: null
|
|
value: null
|
|
}
|
|
}
|
|
@@ -10579,12 +10579,12 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.meshmatcap_frag
|
|
fragmentShader: ShaderChunk.meshmatcap_frag
|
|
},
|
|
},
|
|
points: {
|
|
points: {
|
|
- uniforms: mergeUniforms([UniformsLib.points, UniformsLib.fog]),
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.points, UniformsLib.fog]),
|
|
vertexShader: ShaderChunk.points_vert,
|
|
vertexShader: ShaderChunk.points_vert,
|
|
fragmentShader: ShaderChunk.points_frag
|
|
fragmentShader: ShaderChunk.points_frag
|
|
},
|
|
},
|
|
dashed: {
|
|
dashed: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.fog, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.fog, {
|
|
scale: {
|
|
scale: {
|
|
value: 1
|
|
value: 1
|
|
},
|
|
},
|
|
@@ -10599,12 +10599,12 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.linedashed_frag
|
|
fragmentShader: ShaderChunk.linedashed_frag
|
|
},
|
|
},
|
|
depth: {
|
|
depth: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.displacementmap]),
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.displacementmap]),
|
|
vertexShader: ShaderChunk.depth_vert,
|
|
vertexShader: ShaderChunk.depth_vert,
|
|
fragmentShader: ShaderChunk.depth_frag
|
|
fragmentShader: ShaderChunk.depth_frag
|
|
},
|
|
},
|
|
normal: {
|
|
normal: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.bumpmap, UniformsLib.normalmap, UniformsLib.displacementmap, {
|
|
opacity: {
|
|
opacity: {
|
|
value: 1.0
|
|
value: 1.0
|
|
}
|
|
}
|
|
@@ -10613,14 +10613,14 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.meshnormal_frag
|
|
fragmentShader: ShaderChunk.meshnormal_frag
|
|
},
|
|
},
|
|
sprite: {
|
|
sprite: {
|
|
- uniforms: mergeUniforms([UniformsLib.sprite, UniformsLib.fog]),
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.sprite, UniformsLib.fog]),
|
|
vertexShader: ShaderChunk.sprite_vert,
|
|
vertexShader: ShaderChunk.sprite_vert,
|
|
fragmentShader: ShaderChunk.sprite_frag
|
|
fragmentShader: ShaderChunk.sprite_frag
|
|
},
|
|
},
|
|
background: {
|
|
background: {
|
|
uniforms: {
|
|
uniforms: {
|
|
uvTransform: {
|
|
uvTransform: {
|
|
- value: new Matrix3()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Matrix3()
|
|
},
|
|
},
|
|
t2D: {
|
|
t2D: {
|
|
value: null
|
|
value: null
|
|
@@ -10629,12 +10629,8 @@ const ShaderLib = {
|
|
vertexShader: ShaderChunk.background_vert,
|
|
vertexShader: ShaderChunk.background_vert,
|
|
fragmentShader: ShaderChunk.background_frag
|
|
fragmentShader: ShaderChunk.background_frag
|
|
},
|
|
},
|
|
-
|
|
|
|
- /* -------------------------------------------------------------------------
|
|
|
|
- // Cube map shader
|
|
|
|
- ------------------------------------------------------------------------- */
|
|
|
|
cube: {
|
|
cube: {
|
|
- uniforms: mergeUniforms([UniformsLib.envmap, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.envmap, {
|
|
opacity: {
|
|
opacity: {
|
|
value: 1.0
|
|
value: 1.0
|
|
}
|
|
}
|
|
@@ -10652,9 +10648,9 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.equirect_frag
|
|
fragmentShader: ShaderChunk.equirect_frag
|
|
},
|
|
},
|
|
distanceRGBA: {
|
|
distanceRGBA: {
|
|
- uniforms: mergeUniforms([UniformsLib.common, UniformsLib.displacementmap, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.common, UniformsLib.displacementmap, {
|
|
referencePosition: {
|
|
referencePosition: {
|
|
- value: new Vector3()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Vector3()
|
|
},
|
|
},
|
|
nearDistance: {
|
|
nearDistance: {
|
|
value: 1
|
|
value: 1
|
|
@@ -10667,9 +10663,9 @@ const ShaderLib = {
|
|
fragmentShader: ShaderChunk.distanceRGBA_frag
|
|
fragmentShader: ShaderChunk.distanceRGBA_frag
|
|
},
|
|
},
|
|
shadow: {
|
|
shadow: {
|
|
- uniforms: mergeUniforms([UniformsLib.lights, UniformsLib.fog, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([UniformsLib.lights, UniformsLib.fog, {
|
|
color: {
|
|
color: {
|
|
- value: new Color(0x00000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x00000)
|
|
},
|
|
},
|
|
opacity: {
|
|
opacity: {
|
|
value: 1.0
|
|
value: 1.0
|
|
@@ -10680,7 +10676,7 @@ const ShaderLib = {
|
|
}
|
|
}
|
|
};
|
|
};
|
|
ShaderLib.physical = {
|
|
ShaderLib.physical = {
|
|
- uniforms: mergeUniforms([ShaderLib.standard.uniforms, {
|
|
|
|
|
|
+ uniforms: /*@__PURE__*/mergeUniforms([ShaderLib.standard.uniforms, {
|
|
clearcoat: {
|
|
clearcoat: {
|
|
value: 0
|
|
value: 0
|
|
},
|
|
},
|
|
@@ -10694,7 +10690,7 @@ ShaderLib.physical = {
|
|
value: null
|
|
value: null
|
|
},
|
|
},
|
|
clearcoatNormalScale: {
|
|
clearcoatNormalScale: {
|
|
- value: new Vector2(1, 1)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Vector2(1, 1)
|
|
},
|
|
},
|
|
clearcoatNormalMap: {
|
|
clearcoatNormalMap: {
|
|
value: null
|
|
value: null
|
|
@@ -10721,7 +10717,7 @@ ShaderLib.physical = {
|
|
value: 0
|
|
value: 0
|
|
},
|
|
},
|
|
sheenColor: {
|
|
sheenColor: {
|
|
- value: new Color(0x000000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x000000)
|
|
},
|
|
},
|
|
sheenColorMap: {
|
|
sheenColorMap: {
|
|
value: null
|
|
value: null
|
|
@@ -10739,7 +10735,7 @@ ShaderLib.physical = {
|
|
value: null
|
|
value: null
|
|
},
|
|
},
|
|
transmissionSamplerSize: {
|
|
transmissionSamplerSize: {
|
|
- value: new Vector2()
|
|
|
|
|
|
+ value: /*@__PURE__*/new Vector2()
|
|
},
|
|
},
|
|
transmissionSamplerMap: {
|
|
transmissionSamplerMap: {
|
|
value: null
|
|
value: null
|
|
@@ -10754,7 +10750,7 @@ ShaderLib.physical = {
|
|
value: 0
|
|
value: 0
|
|
},
|
|
},
|
|
attenuationColor: {
|
|
attenuationColor: {
|
|
- value: new Color(0x000000)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(0x000000)
|
|
},
|
|
},
|
|
specularIntensity: {
|
|
specularIntensity: {
|
|
value: 1
|
|
value: 1
|
|
@@ -10763,7 +10759,7 @@ ShaderLib.physical = {
|
|
value: null
|
|
value: null
|
|
},
|
|
},
|
|
specularColor: {
|
|
specularColor: {
|
|
- value: new Color(1, 1, 1)
|
|
|
|
|
|
+ value: /*@__PURE__*/new Color(1, 1, 1)
|
|
},
|
|
},
|
|
specularColorMap: {
|
|
specularColorMap: {
|
|
value: null
|
|
value: null
|
|
@@ -15604,19 +15600,11 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (shadow.map === null && !shadow.isPointLightShadow && this.type === VSMShadowMap) {
|
|
|
|
- shadow.map = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y);
|
|
|
|
- shadow.map.texture.name = light.name + '.shadowMap';
|
|
|
|
- shadow.mapPass = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y);
|
|
|
|
- shadow.camera.updateProjectionMatrix();
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
if (shadow.map === null) {
|
|
if (shadow.map === null) {
|
|
- const pars = {
|
|
|
|
|
|
+ const pars = this.type !== VSMShadowMap ? {
|
|
minFilter: NearestFilter,
|
|
minFilter: NearestFilter,
|
|
- magFilter: NearestFilter,
|
|
|
|
- format: RGBAFormat
|
|
|
|
- };
|
|
|
|
|
|
+ magFilter: NearestFilter
|
|
|
|
+ } : {};
|
|
shadow.map = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y, pars);
|
|
shadow.map = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y, pars);
|
|
shadow.map.texture.name = light.name + '.shadowMap';
|
|
shadow.map.texture.name = light.name + '.shadowMap';
|
|
shadow.camera.updateProjectionMatrix();
|
|
shadow.camera.updateProjectionMatrix();
|
|
@@ -15641,7 +15629,7 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
} // do blur pass for VSM
|
|
} // do blur pass for VSM
|
|
|
|
|
|
|
|
|
|
- if (!shadow.isPointLightShadow && this.type === VSMShadowMap) {
|
|
|
|
|
|
+ if (shadow.isPointLightShadow !== true && this.type === VSMShadowMap) {
|
|
VSMPass(shadow, camera);
|
|
VSMPass(shadow, camera);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -15661,6 +15649,10 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
shadowMaterialHorizontal.defines.VSM_SAMPLES = shadow.blurSamples;
|
|
shadowMaterialHorizontal.defines.VSM_SAMPLES = shadow.blurSamples;
|
|
shadowMaterialVertical.needsUpdate = true;
|
|
shadowMaterialVertical.needsUpdate = true;
|
|
shadowMaterialHorizontal.needsUpdate = true;
|
|
shadowMaterialHorizontal.needsUpdate = true;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (shadow.mapPass === null) {
|
|
|
|
+ shadow.mapPass = new WebGLRenderTarget(_shadowMapSize.x, _shadowMapSize.y);
|
|
} // vertical pass
|
|
} // vertical pass
|
|
|
|
|
|
|
|
|
|
@@ -18522,7 +18514,7 @@ class WebXRManager extends EventDispatcher {
|
|
}
|
|
}
|
|
|
|
|
|
const projectionlayerInit = {
|
|
const projectionlayerInit = {
|
|
- colorFormat: renderer.outputEncoding === sRGBEncoding ? gl.SRGB8_ALPHA8 : gl.RGBA8,
|
|
|
|
|
|
+ colorFormat: gl.RGBA8,
|
|
depthFormat: glDepthFormat,
|
|
depthFormat: glDepthFormat,
|
|
scaleFactor: framebufferScaleFactor
|
|
scaleFactor: framebufferScaleFactor
|
|
};
|
|
};
|
|
@@ -34856,115 +34848,134 @@ class ShapePath {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
-class DataUtils {
|
|
|
|
- // float32 to float16
|
|
|
|
- static toHalfFloat(val) {
|
|
|
|
- if (Math.abs(val) > 65504) console.warn('THREE.DataUtils.toHalfFloat(): Value out of range.');
|
|
|
|
- val = clamp(val, -65504, 65504);
|
|
|
|
- _floatView[0] = val;
|
|
|
|
- const f = _uint32View[0];
|
|
|
|
- const e = f >> 23 & 0x1ff;
|
|
|
|
- return _baseTable[e] + ((f & 0x007fffff) >> _shiftTable[e]);
|
|
|
|
- } // float16 to float32
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- static fromHalfFloat(val) {
|
|
|
|
- const m = val >> 10;
|
|
|
|
- _uint32View[0] = _mantissaTable[_offsetTable[m] + (val & 0x3ff)] + _exponentTable[m];
|
|
|
|
- return _floatView[0];
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-} // float32 to float16 helpers
|
|
|
|
|
|
+const {
|
|
|
|
+ floatView: _floatView,
|
|
|
|
+ uint32View: _uint32View,
|
|
|
|
+ baseTable: _baseTable,
|
|
|
|
+ shiftTable: _shiftTable,
|
|
|
|
+ mantissaTable: _mantissaTable,
|
|
|
|
+ exponentTable: _exponentTable,
|
|
|
|
+ offsetTable: _offsetTable
|
|
|
|
+} = /*@__PURE__*/_generateTables();
|
|
|
|
+
|
|
|
|
+function _generateTables() {
|
|
|
|
+ // float32 to float16 helpers
|
|
|
|
+ const buffer = new ArrayBuffer(4);
|
|
|
|
+ const floatView = new Float32Array(buffer);
|
|
|
|
+ const uint32View = new Uint32Array(buffer);
|
|
|
|
+ const baseTable = new Uint32Array(512);
|
|
|
|
+ const shiftTable = new Uint32Array(512);
|
|
|
|
+
|
|
|
|
+ for (let i = 0; i < 256; ++i) {
|
|
|
|
+ const e = i - 127; // very small number (0, -0)
|
|
|
|
+
|
|
|
|
+ if (e < -27) {
|
|
|
|
+ baseTable[i] = 0x0000;
|
|
|
|
+ baseTable[i | 0x100] = 0x8000;
|
|
|
|
+ shiftTable[i] = 24;
|
|
|
|
+ shiftTable[i | 0x100] = 24; // small number (denorm)
|
|
|
|
+ } else if (e < -14) {
|
|
|
|
+ baseTable[i] = 0x0400 >> -e - 14;
|
|
|
|
+ baseTable[i | 0x100] = 0x0400 >> -e - 14 | 0x8000;
|
|
|
|
+ shiftTable[i] = -e - 1;
|
|
|
|
+ shiftTable[i | 0x100] = -e - 1; // normal number
|
|
|
|
+ } else if (e <= 15) {
|
|
|
|
+ baseTable[i] = e + 15 << 10;
|
|
|
|
+ baseTable[i | 0x100] = e + 15 << 10 | 0x8000;
|
|
|
|
+ shiftTable[i] = 13;
|
|
|
|
+ shiftTable[i | 0x100] = 13; // large number (Infinity, -Infinity)
|
|
|
|
+ } else if (e < 128) {
|
|
|
|
+ baseTable[i] = 0x7c00;
|
|
|
|
+ baseTable[i | 0x100] = 0xfc00;
|
|
|
|
+ shiftTable[i] = 24;
|
|
|
|
+ shiftTable[i | 0x100] = 24; // stay (NaN, Infinity, -Infinity)
|
|
|
|
+ } else {
|
|
|
|
+ baseTable[i] = 0x7c00;
|
|
|
|
+ baseTable[i | 0x100] = 0xfc00;
|
|
|
|
+ shiftTable[i] = 13;
|
|
|
|
+ shiftTable[i | 0x100] = 13;
|
|
|
|
+ }
|
|
|
|
+ } // float16 to float32 helpers
|
|
|
|
|
|
|
|
|
|
-const _buffer = new ArrayBuffer(4);
|
|
|
|
|
|
+ const mantissaTable = new Uint32Array(2048);
|
|
|
|
+ const exponentTable = new Uint32Array(64);
|
|
|
|
+ const offsetTable = new Uint32Array(64);
|
|
|
|
|
|
-const _floatView = new Float32Array(_buffer);
|
|
|
|
|
|
+ for (let i = 1; i < 1024; ++i) {
|
|
|
|
+ let m = i << 13; // zero pad mantissa bits
|
|
|
|
|
|
-const _uint32View = new Uint32Array(_buffer);
|
|
|
|
|
|
+ let e = 0; // zero exponent
|
|
|
|
+ // normalized
|
|
|
|
|
|
-const _baseTable = new Uint32Array(512);
|
|
|
|
|
|
+ while ((m & 0x00800000) === 0) {
|
|
|
|
+ m <<= 1;
|
|
|
|
+ e -= 0x00800000; // decrement exponent
|
|
|
|
+ }
|
|
|
|
|
|
-const _shiftTable = new Uint32Array(512);
|
|
|
|
|
|
+ m &= ~0x00800000; // clear leading 1 bit
|
|
|
|
|
|
-for (let i = 0; i < 256; ++i) {
|
|
|
|
- const e = i - 127; // very small number (0, -0)
|
|
|
|
|
|
+ e += 0x38800000; // adjust bias
|
|
|
|
|
|
- if (e < -27) {
|
|
|
|
- _baseTable[i] = 0x0000;
|
|
|
|
- _baseTable[i | 0x100] = 0x8000;
|
|
|
|
- _shiftTable[i] = 24;
|
|
|
|
- _shiftTable[i | 0x100] = 24; // small number (denorm)
|
|
|
|
- } else if (e < -14) {
|
|
|
|
- _baseTable[i] = 0x0400 >> -e - 14;
|
|
|
|
- _baseTable[i | 0x100] = 0x0400 >> -e - 14 | 0x8000;
|
|
|
|
- _shiftTable[i] = -e - 1;
|
|
|
|
- _shiftTable[i | 0x100] = -e - 1; // normal number
|
|
|
|
- } else if (e <= 15) {
|
|
|
|
- _baseTable[i] = e + 15 << 10;
|
|
|
|
- _baseTable[i | 0x100] = e + 15 << 10 | 0x8000;
|
|
|
|
- _shiftTable[i] = 13;
|
|
|
|
- _shiftTable[i | 0x100] = 13; // large number (Infinity, -Infinity)
|
|
|
|
- } else if (e < 128) {
|
|
|
|
- _baseTable[i] = 0x7c00;
|
|
|
|
- _baseTable[i | 0x100] = 0xfc00;
|
|
|
|
- _shiftTable[i] = 24;
|
|
|
|
- _shiftTable[i | 0x100] = 24; // stay (NaN, Infinity, -Infinity)
|
|
|
|
- } else {
|
|
|
|
- _baseTable[i] = 0x7c00;
|
|
|
|
- _baseTable[i | 0x100] = 0xfc00;
|
|
|
|
- _shiftTable[i] = 13;
|
|
|
|
- _shiftTable[i | 0x100] = 13;
|
|
|
|
|
|
+ mantissaTable[i] = m | e;
|
|
}
|
|
}
|
|
-} // float16 to float32 helpers
|
|
|
|
|
|
|
|
|
|
+ for (let i = 1024; i < 2048; ++i) {
|
|
|
|
+ mantissaTable[i] = 0x38000000 + (i - 1024 << 13);
|
|
|
|
+ }
|
|
|
|
|
|
-const _mantissaTable = new Uint32Array(2048);
|
|
|
|
-
|
|
|
|
-const _exponentTable = new Uint32Array(64);
|
|
|
|
-
|
|
|
|
-const _offsetTable = new Uint32Array(64);
|
|
|
|
-
|
|
|
|
-for (let i = 1; i < 1024; ++i) {
|
|
|
|
- let m = i << 13; // zero pad mantissa bits
|
|
|
|
|
|
+ for (let i = 1; i < 31; ++i) {
|
|
|
|
+ exponentTable[i] = i << 23;
|
|
|
|
+ }
|
|
|
|
|
|
- let e = 0; // zero exponent
|
|
|
|
- // normalized
|
|
|
|
|
|
+ exponentTable[31] = 0x47800000;
|
|
|
|
+ exponentTable[32] = 0x80000000;
|
|
|
|
|
|
- while ((m & 0x00800000) === 0) {
|
|
|
|
- m <<= 1;
|
|
|
|
- e -= 0x00800000; // decrement exponent
|
|
|
|
|
|
+ for (let i = 33; i < 63; ++i) {
|
|
|
|
+ exponentTable[i] = 0x80000000 + (i - 32 << 23);
|
|
}
|
|
}
|
|
|
|
|
|
- m &= ~0x00800000; // clear leading 1 bit
|
|
|
|
|
|
+ exponentTable[63] = 0xc7800000;
|
|
|
|
|
|
- e += 0x38800000; // adjust bias
|
|
|
|
|
|
+ for (let i = 1; i < 64; ++i) {
|
|
|
|
+ if (i !== 32) {
|
|
|
|
+ offsetTable[i] = 1024;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
- _mantissaTable[i] = m | e;
|
|
|
|
-}
|
|
|
|
|
|
+ return {
|
|
|
|
+ floatView: floatView,
|
|
|
|
+ uint32View: uint32View,
|
|
|
|
+ baseTable: baseTable,
|
|
|
|
+ shiftTable: shiftTable,
|
|
|
|
+ mantissaTable: mantissaTable,
|
|
|
|
+ exponentTable: exponentTable,
|
|
|
|
+ offsetTable: offsetTable
|
|
|
|
+ };
|
|
|
|
+} // float32 to float16
|
|
|
|
|
|
-for (let i = 1024; i < 2048; ++i) {
|
|
|
|
- _mantissaTable[i] = 0x38000000 + (i - 1024 << 13);
|
|
|
|
-}
|
|
|
|
|
|
|
|
-for (let i = 1; i < 31; ++i) {
|
|
|
|
- _exponentTable[i] = i << 23;
|
|
|
|
-}
|
|
|
|
|
|
+function toHalfFloat(val) {
|
|
|
|
+ if (Math.abs(val) > 65504) console.warn('THREE.DataUtils.toHalfFloat(): Value out of range.');
|
|
|
|
+ val = clamp(val, -65504, 65504);
|
|
|
|
+ _floatView[0] = val;
|
|
|
|
+ const f = _uint32View[0];
|
|
|
|
+ const e = f >> 23 & 0x1ff;
|
|
|
|
+ return _baseTable[e] + ((f & 0x007fffff) >> _shiftTable[e]);
|
|
|
|
+} // float16 to float32
|
|
|
|
|
|
-_exponentTable[31] = 0x47800000;
|
|
|
|
-_exponentTable[32] = 0x80000000;
|
|
|
|
|
|
|
|
-for (let i = 33; i < 63; ++i) {
|
|
|
|
- _exponentTable[i] = 0x80000000 + (i - 32 << 23);
|
|
|
|
|
|
+function fromHalfFloat(val) {
|
|
|
|
+ const m = val >> 10;
|
|
|
|
+ _uint32View[0] = _mantissaTable[_offsetTable[m] + (val & 0x3ff)] + _exponentTable[m];
|
|
|
|
+ return _floatView[0];
|
|
}
|
|
}
|
|
|
|
|
|
-_exponentTable[63] = 0xc7800000;
|
|
|
|
-
|
|
|
|
-for (let i = 1; i < 64; ++i) {
|
|
|
|
- if (i !== 32) {
|
|
|
|
- _offsetTable[i] = 1024;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
|
|
+var DataUtils = /*#__PURE__*/Object.freeze({
|
|
|
|
+ __proto__: null,
|
|
|
|
+ toHalfFloat: toHalfFloat,
|
|
|
|
+ fromHalfFloat: fromHalfFloat
|
|
|
|
+});
|
|
|
|
|
|
class ParametricGeometry extends BufferGeometry {
|
|
class ParametricGeometry extends BufferGeometry {
|
|
constructor() {
|
|
constructor() {
|