Skip to content

v1.0.0

Latest

Choose a tag to compare

@noname0310 noname0310 released this 07 Oct 19:30
· 2 commits to main since this release

Changes

  • rename MmdXXXAnimationGroup to MmdXXXAnimationContainer

    • rename MmdCameraAnimationGroup to MmdCameraAnimationContainer
    • rename MmdModelAnimationGroup to MmdModelAnimationContainer
    • rename MmdRuntimeCameraAnimationGroup to MmdRuntimeCameraAnimationContainer
    • rename MmdRuntimeModelAnimationGroup to MmdRuntimeModelAnimationContainer
  • change MmdModelLoader default material builder to null for better tree shaking

    • you can pass IMmdMaterialBuilder implementation to mmdModel model loader options to build materials
    • or you can import babylon-mmd/esm/Loader/mmdModelLoader.default.ts to register default MmdStandardMaterialBuilder as shared material builder
  • add multiple MMD camera support

    • you can add multiple IMmdCamera to MmdRuntime
    • MmdRuntime.setCamera is no longer available, instead use MmdRuntime.addAnimatable to add a new camera
  • remove NullMaterialProxy

  • change default value of IMmdModelCreationOptions.materialProxyConstructor to null

    • you must pass MmdStandardMaterialProxy or StandardMaterialProxy to IMmdModelCreationOptions.materialProxyConstructor to use material morphing features
  • change camera animation binding api (applied to MmdCamera and IMmdCamera)

    • MmdCamera.addAnimation, MmdCamera.removeAnimation, MmdCamera.setAnimation are removed
    • use MmdCamera.createRuntimeAnimation to create a new animation and MmdCamera.setRuntimeAnimation to set the animation
    • MmdCamera.createRuntimeAnimation returns MmdRuntimeAnimationHandle which can be used to manage the animation
    • MmdCamera.runtimeAnimations is now a ReadonlyMap<MmdRuntimeAnimationHandle, RuntimeModelAnimation> instead of an array
  • change model animation binding api (applied to MmdModel and MmdWasmModel)

    • MmdModel.addAnimation, MmdModel.removeAnimation, MmdModel.setAnimation are removed
    • use MmdModel.createRuntimeAnimation to create a new animation and MmdModel.setRuntimeAnimation to set the animation
    • MmdModel.createRuntimeAnimation returns MmdRuntimeAnimationHandle which can be used to manage the animation
    • MmdModel.runtimeAnimations is now a ReadonlyMap<MmdRuntimeAnimationHandle, RuntimeModelAnimation> instead of an array
  • introduce IMmdModelCreationOptions.trimMetadata option to disable metadata trimming

    • this is useful when you want to re initialize the model with the same metadata
  • fix crash when destroying MmdModel instances initialized with MmdBulletPhysics

  • fix state invalidation when set audio player which is playing to MmdRuntime

  • fix PmxLoader, PmdLoader crash when load model with no meshes

  • fix crash when evaluating texture alpha on model with no submeshes