diff --git a/src/framework/application.js b/src/framework/application.js index d8a7023ef64..3bb54a3b313 100644 --- a/src/framework/application.js +++ b/src/framework/application.js @@ -1075,7 +1075,7 @@ pc.extend(pc, function () { }, _firstBake: function() { - this.lightmapper.bake(); + this.lightmapper.bake(null, this.scene.lightmapMode); }, /** diff --git a/src/graphics/program-lib/chunks/biasRcvPlane.frag b/src/graphics/program-lib/chunks/biasRcvPlane.frag index 0cf6f4976ae..bca39ec4a83 100644 --- a/src/graphics/program-lib/chunks/biasRcvPlane.frag +++ b/src/graphics/program-lib/chunks/biasRcvPlane.frag @@ -7,8 +7,8 @@ vec2 computeReceiverPlaneDepthBias(vec3 texCoordDX, vec3 texCoordDY) { } float getShadowBias(float resolution, float maxBias) { - vec3 shadowPosDX = dFdx(dShadowCoord) + vec3(0.00001); - vec3 shadowPosDY = dFdy(dShadowCoord) + vec3(0.00001); + vec3 shadowPosDX = dFdx(dShadowCoord); + vec3 shadowPosDY = dFdy(dShadowCoord); vec2 texelSize = vec2(1.0 / resolution); vec2 receiverPlaneDepthBias = computeReceiverPlaneDepthBias(shadowPosDX, shadowPosDY); @@ -16,4 +16,3 @@ float getShadowBias(float resolution, float maxBias) { return -min(fractionalSamplingError, maxBias); } - diff --git a/src/scene/scene.js b/src/scene/scene.js index 85b69b7cbf6..544977c8bb4 100644 --- a/src/scene/scene.js +++ b/src/scene/scene.js @@ -258,6 +258,12 @@ pc.extend(pc, function () { * Only valid for prefiltered cubemap skyboxes. * @property {Number} lightmapSizeMultiplier Lightmap resolution multiplier * @property {Number} lightmapMaxResolution Maximum lightmap resolution + * @property {Number} lightmapMode Baking mode, with possible values: + *