オブジェクトの点滅をシミュレートしようとしているため、マテリアルカラーをアニメートしています。私はその後、colladaの輸出者を経由してブレンダーモデルをthree.jsにエクスポートします。ブレンダーからコラージュをエクスポートしたときにthree.jsでアニメーションの色が機能しない
問題を示すために、色を赤から緑、赤に戻す単一の立方体のモデルを作成しました。私はまたキューブを少し動かす。枠12で
が、私はそれが緑にし、少しそれを置き換える:
私はブレンダー内でアニメーションを再生、私は色の変化とキューブの変位を参照してください。しかし、colladaを使ってthree.jsにエクスポートすると、キューブは移動しますが、1つの色(キューブの色はエクスポートした時点でアクティブになっています。たとえば、赤または緑のいずれかですが、常に色)。私はこの問題を示すcreated a plunkerを持っています。私のコラージュコードはthree.js collada pumpの例に基づいています。
factory.loadColladaModel = function() {
console.log(`now in loadColladaModel`);
var loader = new THREE.ColladaLoader();
loader.options.convertUpAxis = true;
var promise = new Promise((resolve, reject) => {
loader.load('color_animation.dae', (collada) => {
console.log(`now in collada load closure`);
let model = collada.scene;
factory.scene.add(model);
factory.animations = collada.animations;
model.scale.x = model.scale.y = model.scale.z = 5.0;
for (var i = 0; i < factory.animations.length; ++i) {
var animation = factory.animations[ i ];
var kfAnimation = new THREE.KeyFrameAnimation(animation);
kfAnimation.timeScale = 1;
factory.kfAnimations.push(kfAnimation);
}
resolve('loaded');
})
})
return promise;
}
私は材料(色)をアニメーション化するthree.jsを得るためにしなければならない何をしますかモーションを変更するだけでなく、:ここではモデルをロードするために使用されるコードはありますか?私はcolladaファイルの 'animation'タグの下にカラーエントリがあるので、colladaがサポートしていると仮定します。私はこれを見ましたprior question誰かが材料を動作させるためにmorphTargetsを設定しなければならなかったところです。このようなこともする必要がありますか?モーフィングターゲットはモーションのためだけですか、それともカラーですか?
three.js R84 2.78b
多くの感謝をブレンダー。