W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
MMD 資源的動畫助手。
MMDAnimationHelper 處理由 MMDLoader 加載的 MMD 資產(chǎn)的動畫,具有 IK、Grant 和 Physics 等 MMD 特殊功能。它在內(nèi)部使用了 CCDIKSolver 和 MMDPhysics。
// Instantiate a helper
const helper = new MMDAnimationHelper();
// Load MMD resources and add to helper
new MMDLoader().loadWithAnimation(
'models/mmd/miku.pmd',
'models/mmd/dance.vmd',
function ( mmd ) {
helper.add( mmd.mesh, {
animation: mmd.animation,
physics: true
} );
scene.add( mmd.mesh );
new THREE.AudioLoader().load(
'audios/mmd/song.mp3',
function ( buffer ) {
const listener = new THREE.AudioListener();
const audio = new THREE.Audio( listener ).setBuffer( buffer );
listener.position.z = 1;
scene.add( audio );
scene.add( listener );
}
);
}
);
function render() {
helper.update( clock.getDelta() );
renderer.render( scene, camera );
}
webgl_loader_mmd
webgl_loader_mmd_pose
webgl_loader_mmd_audio
params — (可選)
創(chuàng)建一個新的 MMDAnimationHelper。
添加到助手的音頻。
添加到助手的相機。
添加到助手的 SkinnedMesh 數(shù)組。
一個 WeakMap,其中包含在幫助程序中用于添加到幫助程序的對象的動畫內(nèi)容。例如,您可以使用“helper.objects.get(mesh).mixer”為添加的 SkinnedMesh 訪問 AnimationMixer
在 SkinnedMesh 的物理計算之前立即執(zhí)行的可選回調(diào)。此函數(shù)與 SkinnedMesh 一起調(diào)用。
object — SkinnedMesh、相機或音頻參數(shù) — (可選)
animation - 設(shè)置為對象的 AnimationClip 或 AnimationClip 數(shù)組。僅適用于 SkinnedMesh 和 Camera。默認是未定義的。
physics - 僅適用于 SkinnedMesh。一個標(biāo)志是否打開物理。默認為真。
warmup - 只對 SkinnedMesh 和物理是真實的。物理參數(shù)。默認值為 60。
unitStep - 只對 SkinnedMesh 和物理是真實的。物理參數(shù)。默認值為 1 / 65。
maxStepNum - 只對 SkinnedMesh 和物理是真實的。物理參數(shù)。默認值為 3。
gravity - 只對 SkinnedMesh 和物理是真實的。物理參數(shù)。默認為 ( 0, - 9.8 * 10, 0 )。
delayTime - 僅適用于音頻。默認值為 0.0。
將 SkinnedMesh、Camera 或 Audio 添加到助手并設(shè)置動畫。添加對象的動畫持續(xù)時間是同步的。如果已經(jīng)添加了攝像頭/音頻,它將被替換為新的。
key — 允許的字符串是“animation”、“ik”、“grant”、“physics”和“cameraAnimation”。
enabled — true 為啟用,false 為禁用
啟用/禁用動畫功能
mesh — 改變姿勢的 SkinnedMesh。它不需要添加到 helper 中。
vpd — MMDLoader.loadVPD獲取的VPD內(nèi)容
params — (可選)
根據(jù) VPD 內(nèi)容指定更改 SkinnedMesh 的姿勢。
object — SkinnedMesh、相機或音頻
從助手中移除 SkinnedMesh、Camera 或 Audio。
delta — 秒數(shù)
提前混合器時間并更新添加到助手的對象的動畫
examples/jsm/animation/MMDAnimationHelper.js
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: