Browse Source

Editor: Added vox files support.

Mr.doob 4 years ago
parent
commit
6e0c0b0e0f
1 changed files with 29 additions and 0 deletions
  1. 29 0
      editor/js/Loader.js

+ 29 - 0
editor/js/Loader.js

@@ -520,6 +520,35 @@ function Loader( editor ) {
 
 				break;
 
+			case 'vox':
+
+				reader.addEventListener( 'load', async function ( event ) {
+
+					var contents = event.target.result;
+
+					var { VOXLoader, VOXMesh } = await import( '../../examples/jsm/loaders/VOXLoader.js' );
+
+					var chunks = new VOXLoader().parse( contents );
+
+					var group = new THREE.Group();
+					group.name = filename;
+
+					for ( let i = 0; i < chunks.length; i ++ ) {
+
+						const chunk = chunks[ i ];
+
+						const mesh = new VOXMesh( chunk );
+						group.add( mesh );
+
+					}
+
+					editor.execute( new AddObjectCommand( editor, group ) );
+
+				}, false );
+				reader.readAsArrayBuffer( file );
+
+				break;
+
 			case 'vtk':
 
 				reader.addEventListener( 'load', async function ( event ) {