【Unity】入门学习笔记180615——UI设计(11)——屏幕空间、世界空间和相机

1、当绘制完成后(利用最新得Unity UI系统描述Canvas),用户还可实现某些增强效果。

例如,可通过相机透视绘制全屏UI;或者利用上述绘制结果并将其“悬挂”于游戏场景中


2、

Screen Space - Camera,采用了平面屏幕Canvas绘制所提供的内容,其中包括:

如透视、视域、深度排序以及剔除机制。随后,可针对Canvas将其应用于渲染循环中,生成3D风格的Canvas UI,而非平面系统。


World Space,其他类型的视图则是使用Canvas,并将其嵌入于3D场景中,其中包括电视屏幕、计算机控制台、交互式会话元素,甚至是与玩家绑定的清单型UI。


然而,Canvas是图像的唯一组成部分,为了使此类元素在3D方式下工作,需要与场景中的相机协同工作,而非绘制于屏幕上的2D表面,这一点与Screen Space - Overlay Canvas类似。


3、当使用Canvas时,相机对象分为两类:

①渲染相机:可置于场景任意位置,与主相机无关

    Clear flags:用于选择所清除的部分渲染路径(每帧中)——默认为Don't clear,以使UI可绘制于场景

    Culling Mask:选择相机视图中所绘制的元素——默认该项设置为UI

    Projection:用于设置透视(3D)或正交视图(2D),默认设定为透视,正交则与Screen Space-Overlay Canvas相同

    Perspective Field of View(FOV):控制相机视图中的透视可视角度,基本上可视为视图的变形程度

    Viewport Rect:用于控制相机的视口尺寸。(当构建UI时,该项设置后不应再次对其进行修改)

    Target Texture:用于将当前相机渲染至RenderTexture中,但World Space Canvas应用起来更为简单

                             该选项唯一的优点使可在场景中绘制相同的UI

    其他渲染设置项:Depth、Path、Occlusion Culling及HDR也可设置,但不会对UI系统提供真实值,较好的方法是使用                                     Canvas UI特性。

②事件相机:针对World Space,UI系统将使用到此类相机。在将用户输入信息光线投射至场景中时,可确定EventSystem所使用的相机,如果Event Camera为null,默认状态下将使用Main Camera

    默认情况下使用Main Camera即可。如果用户在不同的相机上进行渲染,则需要将其设置为Event Camera;否则输入信息将无法正常工作。


4、定位Canvas

当采用World Space Canvas时,从理论上讲,可在3D环境下实现UI Canvas的任意定位和旋转。与Screen Space Canvas不同,其不受任何限制。实际上,World Space Canvas几乎完全等同于Render Texture,但不会受到许可权限的限制,并向全体人员开放。

Render Texture可视为一类特定的纹理,并通过独立相机在运行期内生成。相机的识见内容表示为纹理缓冲区中的输出结果,而非直接绘制于屏幕上。随后,图像可置于3D场景中的任意之处,进而显示相机的输出结果。

Render Texture常用于纹理链中(纹理在不同的相机视口中进行渲染),并呈现后视显示效果;或者设置额外的视图,而非基于Main Camera的显示结果。

Render Texture需要得到Unity Pro的授权许可,免费版本对此不予支持。


当World Space Canvas设置完毕后,用户可在其中构建下列内容:

#  电视屏幕,可在其中显示一系列广告内容

#  处于浮动状态的信息栏

#  基于游戏角色的交互式文本

#  可与玩家交互的计算机终端


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值