|
@@ -875,7 +875,9 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
} else if ( geometry.isInstancedBufferGeometry ) {
|
|
} else if ( geometry.isInstancedBufferGeometry ) {
|
|
|
|
|
|
- renderer.renderInstances( geometry, drawStart, drawCount, geometry.maxInstancedCount );
|
|
|
|
|
|
+ var instanceCount = Math.min( geometry.instanceCount, geometry._maxInstanceCount );
|
|
|
|
+
|
|
|
|
+ renderer.renderInstances( geometry, drawStart, drawCount, instanceCount );
|
|
|
|
|
|
} else {
|
|
} else {
|
|
|
|
|
|
@@ -934,9 +936,9 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
state.enableAttributeAndDivisor( programAttribute, data.meshPerAttribute );
|
|
state.enableAttributeAndDivisor( programAttribute, data.meshPerAttribute );
|
|
|
|
|
|
- if ( geometry.maxInstancedCount === undefined ) {
|
|
|
|
|
|
+ if ( geometry._maxInstanceCount === undefined ) {
|
|
|
|
|
|
- geometry.maxInstancedCount = data.meshPerAttribute * data.count;
|
|
|
|
|
|
+ geometry._maxInstanceCount = data.meshPerAttribute * data.count;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@@ -955,9 +957,9 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
state.enableAttributeAndDivisor( programAttribute, geometryAttribute.meshPerAttribute );
|
|
state.enableAttributeAndDivisor( programAttribute, geometryAttribute.meshPerAttribute );
|
|
|
|
|
|
- if ( geometry.maxInstancedCount === undefined ) {
|
|
|
|
|
|
+ if ( geometry._maxInstanceCount === undefined ) {
|
|
|
|
|
|
- geometry.maxInstancedCount = geometryAttribute.meshPerAttribute * geometryAttribute.count;
|
|
|
|
|
|
+ geometry._maxInstanceCount = geometryAttribute.meshPerAttribute * geometryAttribute.count;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|