Javascript 3.JS,如何配置相机,使其不倒置模型?

Javascript 3.JS,如何配置相机,使其不倒置模型?,javascript,three.js,webgl,interactive,collada,Javascript,Three.js,Webgl,Interactive,Collada,我正在使用Three.JS和Collada loader制作一个建筑物的三维模型 我正在改进我的系统交互性,但我有两个主要问题: 1-当我在场景中旋转模型时,它以3轴旋转,并使其倒置!我想保持模型在水平轴上固定,并且只沿Y轴(向上)旋转它 如何仅围绕Y轴(向上)旋转此立方体 2-如何使用鼠标移动对系统进行平滑控制?例如,在大模型中,平滑缩放到特定的小对象并不容易。如何将相机配置为平滑缩放、平移和旋转 谢谢在脚本中添加以下内容: controls.getMouseProjectionOnBall2

我正在使用Three.JS和Collada loader制作一个建筑物的三维模型

我正在改进我的系统交互性,但我有两个主要问题:

1-当我在场景中旋转模型时,它以3轴旋转,并使其倒置!我想保持模型在水平轴上固定,并且只沿Y轴(向上)旋转它

如何仅围绕Y轴(向上)旋转此立方体

2-如何使用鼠标移动对系统进行平滑控制?例如,在大模型中,平滑缩放到特定的小对象并不容易。如何将相机配置为平滑缩放、平移和旋转


谢谢在脚本中添加以下内容:

controls.getMouseProjectionOnBall2 = controls.getMouseProjectionOnBall;
controls.getMouseProjectionOnBall = function(x, y){
    return controls.getMouseProjectionOnBall2.call(controls, x, controls.screen.height/2);
}

关于急促的动作,我看到您已经尽了一切可能(通常人们忽略了requestAnimationFrame)。我认为除了降低建筑的复杂性之外,你没有什么办法可以减少震动。

你没有旋转模型。你正在旋转相机

使用
OrbitControls
代替
TrackballControls
——它将保持相机右侧朝上

轨道控制应平滑。如果不是,那么您的模型可能有问题。这只能在个案基础上处理

您使用的库版本已存在一年。明智的做法是更新到当前版本


three.js r.57.

嗨,我是3JS的初学者。我想知道您是如何创建建筑的三维模型的?我使用Autodesk Revit创建了IFC文件。然后我使用Blender将IFC文件导出到Collada。有一个搅拌器插件,读取IFC,您可以轻松地将其导出到Collada。也可以使用“向上绘制”创建Collada文件。