因此,我有一个场景,其中包含我从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进行设置,我可以想象您有一个条件,当接收输入并触发跳动的心脏和声音循环时,将触发动画循环。同步动画和声音循环应该很简单。

希望这可以帮助。

09-19 19:10