高速ETC

mapbox 3D模型在地图缩放时偏移的问题

我导入3D模型以后,取消选中,然后滚动滚轮调整地图层级,当地图视角越来越大时(拉高视角),3D模型的位置移动了,这不应该发生,理论上不管我怎么调整地图层级,地图视角,3D模型的位置都不应该改变。

我们观察到日志中有一个关键突变:

这说明在 zoom 约 5.8 附近,Three.js 模型的屏幕投影发生了突变,而模型本身的经纬度投影是正确的。问题不在经纬度,而在 Three.js 场景的模型世界矩阵或相机投影矩阵的同步出现了错误。模型在 Three.js 场景中的世界坐标/相机投影在特定缩放层级发生了突变,而模型本身的经纬度坐标是正确的(因为经纬度投影始终跟随地图正常移动)。因此,问题出在 Three.js 模型与地图投影矩阵的同步逻辑上,而不是模型的地理位置数据。

根据监控日志,问题已确认

我们确认了问题根源:相机投影矩阵在缩放过程中发生突变(不是平滑变化),导致同样世界坐标的模型在屏幕上的投影位置跳变。


意见反馈