diff --git a/src/renderers/WebGLRenderer.js b/src/renderers/WebGLRenderer.js index 856d3ce560fb58d992ebc48da043ad763c957de2..3e1ea5e66029b6e7ba3bc96f0dae80102a12ee21 100644 --- a/src/renderers/WebGLRenderer.js +++ b/src/renderers/WebGLRenderer.js @@ -772,6 +772,8 @@ function WebGLRenderer( parameters ) { } + var useDataCount = ( index !== null || position !== undefined ); + var rangeStart = geometry.drawRange.start * rangeFactor; var rangeCount = geometry.drawRange.count * rangeFactor; @@ -779,7 +781,7 @@ function WebGLRenderer( parameters ) { var groupCount = group !== null ? group.count * rangeFactor : Infinity; var drawStart = Math.max( rangeStart, groupStart ); - var drawEnd = Math.min( dataCount, rangeStart + rangeCount, groupStart + groupCount ) - 1; + var drawEnd = Math.min( ( useDataCount ? dataCount : Infinity ), rangeStart + rangeCount, groupStart + groupCount ) - 1; var drawCount = Math.max( 0, drawEnd - drawStart + 1 );