PHP 7.4.33
Preview: WebGLObjects.js Size: 1.54 KB
/var/www/uibuilder.cmshelp.dk/httpdocs/node_modules/three/src/renderers/webgl/WebGLObjects.js
function WebGLObjects( gl, geometries, attributes, info ) {

	let updateMap = new WeakMap();

	function update( object ) {

		const frame = info.render.frame;

		const geometry = object.geometry;
		const buffergeometry = geometries.get( object, geometry );

		// Update once per frame

		if ( updateMap.get( buffergeometry ) !== frame ) {

			geometries.update( buffergeometry );

			updateMap.set( buffergeometry, frame );

		}

		if ( object.isInstancedMesh ) {

			if ( object.hasEventListener( 'dispose', onInstancedMeshDispose ) === false ) {

				object.addEventListener( 'dispose', onInstancedMeshDispose );

			}

			if ( updateMap.get( object ) !== frame ) {

				attributes.update( object.instanceMatrix, gl.ARRAY_BUFFER );

				if ( object.instanceColor !== null ) {

					attributes.update( object.instanceColor, gl.ARRAY_BUFFER );

				}

				updateMap.set( object, frame );

			}

		}

		if ( object.isSkinnedMesh ) {

			const skeleton = object.skeleton;

			if ( updateMap.get( skeleton ) !== frame ) {

				skeleton.update();

				updateMap.set( skeleton, frame );

			}

		}

		return buffergeometry;

	}

	function dispose() {

		updateMap = new WeakMap();

	}

	function onInstancedMeshDispose( event ) {

		const instancedMesh = event.target;

		instancedMesh.removeEventListener( 'dispose', onInstancedMeshDispose );

		attributes.remove( instancedMesh.instanceMatrix );

		if ( instancedMesh.instanceColor !== null ) attributes.remove( instancedMesh.instanceColor );

	}

	return {

		update: update,
		dispose: dispose

	};

}


export { WebGLObjects };

Directory Contents

Dirs: 0 × Files: 30
Name Size Perms Modified Actions
767 B lrw-r--r-- 2025-03-28 11:04:39
Edit Download
4.86 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
7.57 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
12.14 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.61 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
3.70 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
3.29 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.86 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
2.87 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.87 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
3.33 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.86 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.00 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
12.91 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
13.66 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
4.46 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.54 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
30.46 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
20.88 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
639 B lrw-r--r-- 2025-03-28 11:04:39
Edit Download
3.96 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.63 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
196 B lrw-r--r-- 2025-03-28 11:04:39
Edit Download
1.93 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
11.32 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
25.73 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
60.56 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
20.31 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
8.39 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
9.39 KB lrw-r--r-- 2025-03-28 11:04:39
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).