我使用ar.js与aframe加载多个对象到一个a-scene
,而不是看到他们应该在哪里的对象(根据地图编码/latlng),我得到他们所有朝向相同的位置。例如,我有一个向南倾斜的a-entity
和一个向北倾斜的a-entity
。发生的情况是,两个实体都出现在北边或南边,而不是它们应该在的地方。下面是我的代码:
<a-scene
vr-mode-ui="enabled: false"
embedded
arjs='sourceType: webcam; sourceWidth:1280; sourceHeight:960; displayWidth: 1280; displayHeight: 960; debugUIEnabled: false;'>
<a-camera gps-camera rotation-reader far="5000"></a-camera>
<a-entity gltf-model="/path/to/model" rotation="0 180 0" scale="0.70 0.70 0.70" gps-entity-place="<here are values of lat and long towards north>" animation-mixer/>
<a-entity gltf-model="/path/to/model" rotation="0 180 0" scale="0.70 0.70 0.70" gps-entity-place="<here are values of lat and long towards south>" animation-mixer/>
</a-scene>
我认为您需要在<a-camera />
元素中使用gps-projected-camera
而不是gps-camera
。
你可以把它们都放在同一个位置,并使用position
参数:例如
<a-scene
vr-mode-ui="enabled: false"
embedded
arjs='sourceType: webcam; sourceWidth:1280; sourceHeight:960; displayWidth: 1280; displayHeight: 960; debugUIEnabled: false;'>
<a-camera gps-camera rotation-reader far="5000"></a-camera>
<a-entity gltf-model="/path/to/model" rotation="0 180 0" scale="0.70 0.70 0.70" gps-entity-place="<here are values of lat and long towards north>" position="3 45 0" animation-mixer/>
<a-entity gltf-model="/path/to/model" rotation="0 180 0" scale="0.70 0.70 0.70" gps-entity-place="<here are values of lat and long towards south>" position="0 45 0" animation-mixer/>
</a-scene>
根据我的经验,如果你在微调位置,GPS坐标可能不是很精确。那么最好对所有对象使用相同的线,并将它们相对放置。