getBreaks method

void getBreaks()

Implementation

void getBreaks() {
	final camera = data.camera;
	final far = math.min( camera.far, data.maxFar );
	breaks.length = 0;

	switch ( data.mode ) {

		case CSMMode.uniform:
			uniformSplit( data.cascades, camera.near, far, breaks );
			break;
		case CSMMode.logarithmic:
			logarithmicSplit( data.cascades, camera.near, far, breaks );
			break;
		case CSMMode.practical:
			practicalSplit( data.cascades, camera.near, far, 0.5, breaks );
			break;
		case CSMMode.custom:
			if ( data.customSplitsCallback == null ) console.error( 'CSM: Custom split scheme callback not defined.' );
			data.customSplitsCallback?.call(data.cascades, camera.near, far, breaks);
			break;
	}
  }