Skip to content

v1.0.0-beta.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@0b5vr 0b5vr released this 10 Aug 09:50
· 1219 commits to dev since this release

v0.6.4...v1.0.0-beta.1


This is the first ever release of three-vrm with VRM1.0 support.

🚨 Breaking Changes

  • Notable: three-vrm is now implemented as a loader plugin instead of mere importer method.
    • Three.js r126 or more is required
    • usage:
      const scene = new THREE.Scene();
      
      const loader = new THREE.GLTFLoader();
      
      // Install GLTFLoader plugin
      loader.register( ( parser ) => {
      
      	return new THREE_VRM.VRMLoaderPlugin( parser );
      
      } );
      
      loader.load(
      
      	// URL of the VRM you want to load
      	'/models/three-vrm-girl.vrm',
      
      	// called when the resource is loaded
      	( gltf ) => {
      
      		// retrieve a VRM instance from gltf
      		const vrm = gltf.userData.vrm;
      
      		// add the loaded vrm to the scene
      		scene.add( vrm.scene );
      
      		// deal with vrm features
      		console.log( vrm );
      
      	},
      
      	// called while loading is progressing
      	( progress ) => console.log( 'Loading model...', 100.0 * ( progress.loaded / progress.total ), '%' ),
      
      	// called when loading has errors
      	( error ) => console.error( error )
      
      );
  • Notable: renderer.outputEncoding should be THREE.sRGBEncoding
  • Notable: BlendShapeManager is renamed to ExpressionManager.
    • vrm.expressionManager
  • There are a lot of changes based on the spec of VRM 1.0.
  • Some of implementations are separated to individual packages
    • You probably don't have to care about these packages since the build of @pixiv/three-vrm includes all of necessary dependencies.