|
@@ -19980,6 +19980,7 @@ function WebGLProgram( renderer, cacheKey, parameters, bindingStates ) {
|
|
|
parameters.numLightProbes > 0 ? '#define USE_LIGHT_PROBES' : '',
|
|
parameters.numLightProbes > 0 ? '#define USE_LIGHT_PROBES' : '',
|
|
|
|
|
|
|
|
parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
|
|
parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
|
|
|
|
|
+ parameters.reverseDepthBuffer ? '#define USE_REVERSEDEPTHBUF' : '',
|
|
|
|
|
|
|
|
'uniform mat4 modelMatrix;',
|
|
'uniform mat4 modelMatrix;',
|
|
|
'uniform mat4 modelViewMatrix;',
|
|
'uniform mat4 modelViewMatrix;',
|
|
@@ -20145,6 +20146,7 @@ function WebGLProgram( renderer, cacheKey, parameters, bindingStates ) {
|
|
|
parameters.decodeVideoTexture ? '#define DECODE_VIDEO_TEXTURE' : '',
|
|
parameters.decodeVideoTexture ? '#define DECODE_VIDEO_TEXTURE' : '',
|
|
|
|
|
|
|
|
parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
|
|
parameters.logarithmicDepthBuffer ? '#define USE_LOGDEPTHBUF' : '',
|
|
|
|
|
+ parameters.reverseDepthBuffer ? '#define USE_REVERSEDEPTHBUF' : '',
|
|
|
|
|
|
|
|
'uniform mat4 viewMatrix;',
|
|
'uniform mat4 viewMatrix;',
|
|
|
'uniform vec3 cameraPosition;',
|
|
'uniform vec3 cameraPosition;',
|
|
@@ -20537,6 +20539,7 @@ function WebGLPrograms( renderer, cubemaps, cubeuvmaps, extensions, capabilities
|
|
|
const programs = [];
|
|
const programs = [];
|
|
|
|
|
|
|
|
const logarithmicDepthBuffer = capabilities.logarithmicDepthBuffer;
|
|
const logarithmicDepthBuffer = capabilities.logarithmicDepthBuffer;
|
|
|
|
|
+ const reverseDepthBuffer = capabilities.reverseDepthBuffer;
|
|
|
const SUPPORTS_VERTEX_TEXTURES = capabilities.vertexTextures;
|
|
const SUPPORTS_VERTEX_TEXTURES = capabilities.vertexTextures;
|
|
|
|
|
|
|
|
let precision = capabilities.precision;
|
|
let precision = capabilities.precision;
|
|
@@ -20828,6 +20831,7 @@ function WebGLPrograms( renderer, cubemaps, cubeuvmaps, extensions, capabilities
|
|
|
|
|
|
|
|
sizeAttenuation: material.sizeAttenuation === true,
|
|
sizeAttenuation: material.sizeAttenuation === true,
|
|
|
logarithmicDepthBuffer: logarithmicDepthBuffer,
|
|
logarithmicDepthBuffer: logarithmicDepthBuffer,
|
|
|
|
|
+ reverseDepthBuffer: reverseDepthBuffer,
|
|
|
|
|
|
|
|
skinning: object.isSkinnedMesh === true,
|
|
skinning: object.isSkinnedMesh === true,
|
|
|
|
|
|
|
@@ -21047,38 +21051,40 @@ function WebGLPrograms( renderer, cubemaps, cubeuvmaps, extensions, capabilities
|
|
|
_programLayers.enable( 2 );
|
|
_programLayers.enable( 2 );
|
|
|
if ( parameters.logarithmicDepthBuffer )
|
|
if ( parameters.logarithmicDepthBuffer )
|
|
|
_programLayers.enable( 3 );
|
|
_programLayers.enable( 3 );
|
|
|
- if ( parameters.skinning )
|
|
|
|
|
|
|
+ if ( parameters.reverseDepthBuffer )
|
|
|
_programLayers.enable( 4 );
|
|
_programLayers.enable( 4 );
|
|
|
- if ( parameters.morphTargets )
|
|
|
|
|
|
|
+ if ( parameters.skinning )
|
|
|
_programLayers.enable( 5 );
|
|
_programLayers.enable( 5 );
|
|
|
- if ( parameters.morphNormals )
|
|
|
|
|
|
|
+ if ( parameters.morphTargets )
|
|
|
_programLayers.enable( 6 );
|
|
_programLayers.enable( 6 );
|
|
|
- if ( parameters.morphColors )
|
|
|
|
|
|
|
+ if ( parameters.morphNormals )
|
|
|
_programLayers.enable( 7 );
|
|
_programLayers.enable( 7 );
|
|
|
- if ( parameters.premultipliedAlpha )
|
|
|
|
|
|
|
+ if ( parameters.morphColors )
|
|
|
_programLayers.enable( 8 );
|
|
_programLayers.enable( 8 );
|
|
|
- if ( parameters.shadowMapEnabled )
|
|
|
|
|
|
|
+ if ( parameters.premultipliedAlpha )
|
|
|
_programLayers.enable( 9 );
|
|
_programLayers.enable( 9 );
|
|
|
- if ( parameters.doubleSided )
|
|
|
|
|
|
|
+ if ( parameters.shadowMapEnabled )
|
|
|
_programLayers.enable( 10 );
|
|
_programLayers.enable( 10 );
|
|
|
- if ( parameters.flipSided )
|
|
|
|
|
|
|
+ if ( parameters.doubleSided )
|
|
|
_programLayers.enable( 11 );
|
|
_programLayers.enable( 11 );
|
|
|
- if ( parameters.useDepthPacking )
|
|
|
|
|
|
|
+ if ( parameters.flipSided )
|
|
|
_programLayers.enable( 12 );
|
|
_programLayers.enable( 12 );
|
|
|
- if ( parameters.dithering )
|
|
|
|
|
|
|
+ if ( parameters.useDepthPacking )
|
|
|
_programLayers.enable( 13 );
|
|
_programLayers.enable( 13 );
|
|
|
- if ( parameters.transmission )
|
|
|
|
|
|
|
+ if ( parameters.dithering )
|
|
|
_programLayers.enable( 14 );
|
|
_programLayers.enable( 14 );
|
|
|
- if ( parameters.sheen )
|
|
|
|
|
|
|
+ if ( parameters.transmission )
|
|
|
_programLayers.enable( 15 );
|
|
_programLayers.enable( 15 );
|
|
|
- if ( parameters.opaque )
|
|
|
|
|
|
|
+ if ( parameters.sheen )
|
|
|
_programLayers.enable( 16 );
|
|
_programLayers.enable( 16 );
|
|
|
- if ( parameters.pointsUvs )
|
|
|
|
|
|
|
+ if ( parameters.opaque )
|
|
|
_programLayers.enable( 17 );
|
|
_programLayers.enable( 17 );
|
|
|
- if ( parameters.decodeVideoTexture )
|
|
|
|
|
|
|
+ if ( parameters.pointsUvs )
|
|
|
_programLayers.enable( 18 );
|
|
_programLayers.enable( 18 );
|
|
|
- if ( parameters.alphaToCoverage )
|
|
|
|
|
|
|
+ if ( parameters.decodeVideoTexture )
|
|
|
_programLayers.enable( 19 );
|
|
_programLayers.enable( 19 );
|
|
|
|
|
+ if ( parameters.alphaToCoverage )
|
|
|
|
|
+ _programLayers.enable( 20 );
|
|
|
|
|
|
|
|
array.push( _programLayers.mask );
|
|
array.push( _programLayers.mask );
|
|
|
|
|
|
|
@@ -37701,12 +37707,19 @@ class CylinderGeometry extends BufferGeometry {
|
|
|
|
|
|
|
|
// faces
|
|
// faces
|
|
|
|
|
|
|
|
- indices.push( a, b, d );
|
|
|
|
|
- indices.push( b, c, d );
|
|
|
|
|
|
|
+ if ( radiusTop > 0 ) {
|
|
|
|
|
|
|
|
- // update group counter
|
|
|
|
|
|
|
+ indices.push( a, b, d );
|
|
|
|
|
+ groupCount += 3;
|
|
|
|
|
|
|
|
- groupCount += 6;
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if ( radiusBottom > 0 ) {
|
|
|
|
|
+
|
|
|
|
|
+ indices.push( b, c, d );
|
|
|
|
|
+ groupCount += 3;
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|