1

我的模型有一些问题。是一个简单的模型,我不能让它很好地工作......

我在这里上传我的项目:http ://webgl.drapps.info

我有一个汽车模型,其中一些零件在鼠标悬停时会改变材料。我使用带有“on”功能的threex.domevent.js 库。我的模型由 json 文件加载。

第一期

当鼠标不在画布上时,threejs 检测到鼠标在我的模型的一块上,但这不是真的,并且那块改变了它的材质(触发 mouseOver 事件)。

此外,我试图获得更好的鼠标悬停事件,因为即使鼠标真的在一块上,该事件也不会触发。

第 2 期

这是关于 TrackballControls 的。有什么办法可以控制我的世界的旋转?我的意思是:仅在一个轴上旋转,仅旋转 180 度等......有没有教程或文章来学习如何旋转和平移相机?

谢谢你所做的一切,我会很高兴任何想要回答这个问题的人......因为我有点失落

谢谢

4

2 回答 2

1

对不起,但你运气不好。

问题 1。哎呀!您使用的是一个将近一年threex.js没有更新的第三方应用程序,所以我无法帮助您。

您还使用的是旧版本的three.js. 请更新到当前版本。

如果您仍然有问题,请通过简单的演示发布一个新问题——而不是您的整个项目。更好的是,首先谷歌你的问题。

问题 2TrackballControls不是库的一部分——它是示例的一部分——所以它不受官方支持。如果您对此不满意,您将不得不自己破解代码。

这个问题出现了很多。去谷歌上查询。据我所知,没有一个好的解决方案。

就个人而言,我会OrbitControls在你的情况下使用 - 它使场景保持正面朝上,并且你可以限制最大极角,使相机保持“在地面之上”。

最好的示例/教程是官方three.js示例,它将与库的当前版本一起使用。

于 2012-12-14T15:49:09.407 回答
0

我对问题 1 无能为力。

问题2:

我还在做一个可视化车辆的项目,需要能够旋转。我也尝试过 Trackballcontrolls,但它不适合我的需要。

我最终做的是创建一个主 Object3d,然后我没有将对象/模型添加到场景中,而是将它们添加到主 Object3d 中。这样旋转场景中的所有东西,我只需要旋转主对象。为了实际进行旋转,我只使用了其中一个立方体示例中的代码。

于 2012-12-18T10:22:53.853 回答