正交相机(Orthographic Camera)
Unity3D中的正交相机(Orthographic Camera)是一种投影方式,它不同于透视相机(Perspective Camera)的投影方式。在正交相机中,物体在视野中的大小与其与相机的距离无关,也就是说,所有物体在相机视野中呈现的大小是相同的。
Unity3D的正交相机可以看作是一个在固定位置的照相机,它将三维空间中的物体投影到一个二维图像平面上,而不考虑物体到相机的距离。因此,在正交投影中,无论物体离相机多远,它们在二维图像平面上的大小都不会改变。
正交相机的投影方式是通过一个虚拟的长方体来取景,并将场景投影到这个长方体的前面。在Unity中,可以通过更改相机参数来调整这个长方体的尺寸,进而影响相机视野中物体的显示大小。
主要特点和应用场景
物体大小不变
由于正交相机不考虑物体到相机的距离,所以物体在相机视野中的大小是固定的,这使得在2D游戏或者UI设计中非常方便。
无透视收缩效果
在正交投影中,远处的物体和近处的物体在图像平面上的大小是相同的,不会有透视收缩效果,这使得场景中的物体之间的相对距离
保持不变。
适用于2D游戏和UI设计
正交相机由于其特殊的投影方式,非常适合用于2D游戏和UI设计,可以很容易地实现平铺纹理或者背景等效果。
易于实现像素化效果
正交相机由于物体大小固定,所以可以很容易地实现像素化效果,这在一些复古风格的2D游戏中非常常见。
总的来说,Unity3D的正交相机通过忽略物体到相机的距离,实现了一种特殊的投影方式,这种方式在2D游戏和UI设计中有广泛的应用。
正交相机的主要属性
- 投影模式(Projection Type)
这是设置相机投影方式的属性,Unity中提供了多种投影模式,但对于正交相机来说,通常只会选择“正交(Orthographic)”这一项。
选择正交投影后,相机的视野不会因物体距离的增加而产生大小变化。
- 视野大小(Field of View)
在正交投影中,视野大小实际上定义了相机的视锥体的大小,它决定了相机的可视范围。Unity中是以角度来定义的,数值越大,
视野范围越宽。
- 近平面(Near Plane)和远平面(Far Plane)
这两个属性定义了相机视锥体的近边界和远边界。在正交相机中,这两个平面是固定垂直于相机前后的,不会因为相机的移动而改变。
近平面和远平面的距离决定了相机的深度范围。
- 正交尺寸(Orthographic Size)
这个属性定义了相机的虚拟长方体视野的尺寸。相机将场景投影到一个虚拟的长方体上,这个长方体的长、宽、高分别由正交尺寸的
X、Y、Z分量决定。物体在相机视野中的大小实际上是由这个长方体的尺寸决定的。例如,如果正交尺寸的X为10,Y为5,那么相机视野
的宽高比就是2:1。
- 平移(Position)
这是相机在三维空间中的位置,可以自由设置。
- 旋转(Rotation)
这是相机在三维空间中的旋转,同样可以自由设置。旋转会影响相机的朝向,从而改变拍摄的视角。
- 缩放(Scale)
在Unity中,相机也有缩放属性,但这通常指的是相机视锥体的缩放,而不是像物体一样改变大小。这个属性在正交相机中不太常用。