[name]

一个 MMD 资源的物理处理程序.

[name] 计算由[page:MMDLoader]和 ammo.js 加载的模型的Physics (基于 Bullet 的 JavaScript Physics 引擎).

Example

var physics; // Load MMD resources and instantiate MMDPhysics new THREE.MMDLoader().load( 'models/mmd/miku.pmd', function ( mesh ) { physics = new THREE.MMDPhysics( mesh ) scene.add( mesh ); } ); function render() { var delta = clock.getDelta(); animate( delta ); // update bones if ( physics !== undefined ) physics.update( delta ); renderer.render( scene, camera ); } [example:webgl_loader_mmd]
[example:webgl_loader_mmd_audio]


Constructor(构造器)

[name]( [param:SkinnedMesh mesh], [param:Array rigidBodyParams], [param:Array constraintParams], [param:Object params] )

[page:SkinnedMesh mesh] — [page:SkinnedMesh] , [name] 提供计算 Physics.
[page:Array rigidBodyParams] — [page:Object] 数组,定义了Rigid Body 参数.
[page:Array constraintParams] — (可选的) [page:Object]数组,定义了 Constraint 参数.
[page:Object params] — (可选的)

新建 [name].

Properties(属性)

[property:Array mesh]

[page:SkinnedMesh] 传递给 constructor.

Methods(方法)

[method:MMDPhysicsHelper createHelper]()

返回 [page:MMDPhysicsHelper]. 你可以通过将助手添加到场景来可视化Rigid bodies.

[method:CCDIKSolver reset]()

重置Rigid bodies 为当前骨骼。.

[method:CCDIKSolver setGravity]( [param:Vector3 gravity] )

[page:Vector3 gravity] — 重力的方向和大小

设定 gravity.

[method:CCDIKSolver update]( [param:Number delta] )

[page:Number delta] — 时间秒.

高级物理计算和更新骨骼。

[method:CCDIKSolver warmup]( [param:Integer cycles] )

[page:Number delta] — 时间秒.

热身Rigid bodies. 计算循环步骤。.

Source(来源)

[link:https://github.com/mrdoob/three.js/blob/master/examples/js/animation/MMDPhysics.js examples/js/animation/MMDPhysics.js]