提高我的三个js的性能

时间:2012-12-14 10:27:29

标签: camera rotation three.js

我的模型有一些问题。是一个简单的模型购买我不能使它运作良好...

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

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

第1期

当鼠标不在画布上时,threejs会检测到鼠标在我的模型上,但事实并非如此,并且该部分会更改其材质(触发mouseOver事件)。

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

第2期

这是关于TrackballControls。有没有办法控制我的世界的旋转?我的意思是:只在一个轴上旋转,仅旋转180度等等...是否有任何教程或文章要学习如何旋转和翻译相机?

感谢所有事情,我会非常感谢任何想要回答这个问题的人......因为我有点失落

由于

2 个答案:

答案 0 :(得分:1)

抱歉,但你运气不好。

问题1 。哎呀!您使用的threex.js是第三方应用,几乎尚未更新,因此我无法帮助您。

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

如果您仍有问题,请使用简单的演示发布新问题 - 而不是整个项目。更好的是,谷歌首先提出你的问题。

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

这个问题已经出现了很多。谷歌一下。据我所知,没有一个好的解决方案。

就我个人而言,我会在你的情况下使用OrbitControls - 它可以使场景保持正面朝上,你可以约束最大极角,让相机保持在地面上”

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

答案 1 :(得分:0)

我无法解决问题1。

Issue2:

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

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