因此,我有一个场景,其中包含我从Blender导入的心脏3D模型。
我已将其与Leap Motion连接起来,以便我们可以移动和旋转心脏模型。
我希望能够使心脏成长和收缩(模拟跳动的心脏)并发挥跳动的心音效果,但前提是只有有人与Leap交互时才可以。
我是3.JS的新手,也不知道从哪里开始。
有人可以帮忙吗?
最佳答案
我是THREE JS的新手,但是最近正在从事类似的项目。为了使心脏成长和收缩,我将在THREE.js的Animation循环内调用Scale工具:
count = 0
function render() {
if (count < 21){
heart.scale.x += 0.01
heart.scale.y += 0.01
heart.scale.z += 0.01
count += 1
}
if ((count > 20) && (count < 40)) {
heart.scale.x = cube.scale.x - 0.01
heart.scale.y = cube.scale.x - 0.01
heart.scale.z = cube.scale.x - 0.01
count += 1
} else if (count == 40){ count = 0}
renderer.render( scene, camera );
}
您也可以使用Tween JS以获得更临床和更真实的心跳功能。
对于声音,请看以下示例:http://threejs.org/examples/#misc_sound
对于用LeapMotion进行设置,我可以想象您有一个条件,当接收输入并触发跳动的心脏和声音循环时,将触发动画循环。同步动画和声音循环应该很简单。
希望这可以帮助。