当前位置: 首页 > 文档资料 > A-Frame 中文文档 >

相机

优质
小牛编辑
129浏览
2023-12-01

“相机”组件定义用户从哪个角度查看场景。相机通常与允许输入设备移动和旋转相机的控件组件配对。

例子

位于人眼平均高度(1.6米)的照相机。

            <a-entity  camera=  "userHeight: 1.6"  look-controls></a-entity>
          

属性

属性描述默认值
active在具有多个摄影机的场景中,摄影机是否为活动摄影机。true
far相机视锥体的远裁剪平面。10000
fov视场角(以度为单位)。80
near相机视锥体的近裁剪平面。0.005
userHeight当不在虚拟现实模式下时,所需要给相机添加的高度。默认设置为1.6(米为单位,表示平均人眼高度)。0
zoom相机的缩放系数。1

VR行为

当不处于VR模式时,userHeight将相机转换为近似人眼水平的平均高度。注入式摄像机将此设置为1.6(米)。当进入VR时,移除该高度,以便我们使用从虚拟现实头戴设备返回的绝对位置。这个偏移使得VR模式和非VR模式都能适当工作,使桌面屏幕上的体验看起来像那么回事。

当退出VR时,相机将重置其旋转为进入VR之前的状态,这就是为什么当我们退出VR时,相机的旋转回到桌面屏幕的正常状态。

改变激活的相机

active属性被切换时,组件将通知相机系统更改渲染器使用的当前摄影机:

            varsecondCameraEl =document.querySelector('#second-camera');
            secondCameraEl.setAttribute('camera','active',true);

将实体固定到相机

若要将实体固定到相机上,以便无论用户在何处查看,它们都保持在视图中,可以将这些实体附加为相机的子实体。比如可以应用于平视显示器(HUD)。

            <a-entity  camera  look-controls>
            <a-entity  geometry=  "primitive: plane; height: 0.2; width: 0.2"  position=  "0 0 -1"
            
            material="color: gray; opacity: 0.5"></a-entity>
            </a-entity>
          

注意,你应该谨慎使用平视显示器,因为它们会在虚拟现实中引起刺激和眼睛疲劳。考虑将菜单集成到世界本身的结构中。如果你真的创建了一个平视显示器,请确保平视显示器在视野的中心位置,这样用户就不必费力地阅读它。