答案 0 :(得分:2)
您基本上可以通过两个步骤来解决此问题:
首先,您必须选择3D对象,这可以通过光线投射来完成。有许多官方示例演示了基于光线投射的3D交互,例如:
https://threejs.org/examples/webgl_interactive_cubes
如果知道单击了某个3D对象,则将摄像机从其当前位置动画化为定义的目标位置。可能的目标位置可以事先定义,也可以根据对象的边界体积和当前相机位置以某种方式即时计算。实际的动画可以通过多种方式完成。一种方法是使用诸如tween.js之类的补间引擎。请查看以下示例,以了解如何将其与three.js
一起使用: