

			}

			function initRays() {

				const position = new THREE.Vector3();
				const quaternion = new THREE.Quaternion();
				const scale = new THREE.Vector3( 1, 1, 1 );
				const matrix = new THREE.Matrix4();

				for ( let i = 0; i < MAX_RAYS * 2; i ++ ) {

					position.randomDirection().multiplyScalar( 3.75 );
					matrix.compose( position, quaternion, scale );
					sphereInstance.setMatrixAt( i, matrix );

				}

			}

			function updateRays() {

				if ( ! mesh ) return;

				_raycaster.firstHitOnly 