我在屏幕上显示三个对象,我可以选择(单击)这些对象(现在我只是在点击时更改对象的颜色)。我想要做的就是当用户点击其中一个对象时,对象应该出现在摄像机前面(当你想要以漂亮的动画来到前面时,也想要旋转并缩放它)。当用户右键单击屏幕时,对象将返回其位置(默认对象位置)。 我在网上搜索了像缩放对象,焦点对象这样的术语,但是对于我上面解释的场景无法找到任何帮助。
请帮助我了解基本概念如何使用THREE.js实现这一目标。
此致 ZB
答案 0 :(得分:0)
您的问题是您无法缩放对象,您可以放大相机或将对象放在相机前面。 第一种方法“放大相机”:
if ( intersects.length > 0 ) {
// set camera in with some gap;
camera.position.z = intersects[0].object.position.z - 100;
camera.position.x = intersects[0].object.position.x;
camera.position.y = intersects[0].object.position.Y;
}
第二种方法“将物体带到相机前面”:
if ( intersects.length > 0 ) {
// bring object;
intersects[0].object.position.z = camera.position.z - 100;
intersects[0].object.position.x = camera.position.x;
intersects[0].object.position.y = camera.position.y;
}