renderMultiDrawInstances method

  1. @override
void renderMultiDrawInstances(
  1. List<int> starts,
  2. List<int> counts,
  3. int drawCount,
  4. List<int> primcount,
)
override

Implementation

@override
	void renderMultiDrawInstances(List<int> starts, List<int> counts, int drawCount, List<int> primcount ) {
		if ( drawCount == 0 ) return;
		final extension = extensions.get( 'WEBGL_multi_draw' );

		if ( extension == null ) {
			for (int i = 0; i < starts.length; i ++ ) {
				renderInstances(starts[i], counts[i], primcount[i]);
			}
		}
  else {
			extension.multiDrawArraysInstancedWEBGL( mode, starts, 0, counts, 0, primcount, 0, drawCount );

			int elementCount = 0;
			for (int i = 0; i < drawCount; i ++ ) {
				elementCount += counts[ i ];
			}
			for (int i = 0; i < primcount.length; i ++ ) {
				info.update(elementCount, mode, primcount[i]);
			}
		}
	}