dispose method

  1. @override
void dispose()
override

Implementation

@override
	void dispose() {
		final frustumLines = this.frustumLines;
		final cascadeLines = this.cascadeLines;
		final cascadePlanes = this.cascadePlanes;
		final shadowLines = this.shadowLines;

		frustumLines.geometry?.dispose();
		frustumLines.material?.dispose();

		final cascades = csm.data.cascades;

		for (int i = 0; i < cascades; i ++ ) {

			final cascadeLine = cascadeLines[ i ];
			final cascadePlane = cascadePlanes[ i ];
			final shadowLineGroup = shadowLines[ i ];
			final shadowLine = shadowLineGroup.children[ 0 ];

			cascadeLine.dispose(); // Box3Helper

			cascadePlane.geometry?.dispose();
			cascadePlane.material?.dispose();

			shadowLine.dispose(); // Box3Helper
		}
	}