Unity中UGUI之Canvas属性解读版本二
Canvas
Render Modes(渲染模式)
1.在screen空間中渲染
2.在world空間中渲染
Screen Space-Overlay
在這個渲染模式中,UI元素將在場景的上面。如果場景改變大小或改變分辨率,Canvas將自動改變大小去適配。
Screen Space-Camera
這和Screen Space-Overlay類似,但是在這個模式中,這個Canvas放置在了給定距離的攝像機的前面。這些UI元素都是通過攝像機繪制的。這意味著攝像機影響UI的外觀。如果攝像機設置為Perspective(透視視角),UI元素將會通過透明視角渲染,通過攝像機可視區域控制。
如果屏幕改變大小或改變分辨率,或攝像機frustrum改變,Canvas將自動改變大小去適配。
World Space
在這個繪制模式中,Canvas將和場景中的其他對象一樣顯示。Scene可以通過手動設置Rect Transform 來控制大小。在場景中,UI元素將繪制在其他基于3D放置的對象的錢前面或后面。對于UI作為世界的一部分是有用的。也被稱為”diegetic interface”。
Canvas Scaler
這個控件主要負責Canvas的顯示效果?
其中UI Scale Mode較為重要。?
?
可選的模式有3種,分別是 Constant Pixel Size, Scale With Screen Size和Constant Physical Size。
Constant Pixel Size
當選擇Constant Pixel Size時,即完全根據Canvas設置的大小進行顯示,無論在何種分辨率下,大小均為Unity中設置的大小(不能很好地適應不同分辨率)。?
Scale Factor:保持大小的比例 。原圖100x100,原始大小1=100x100,原來的2倍大 2=200x200?
Reference Pixels Per Unity:100表示Unity里的1單位大小代表100像素。
Scale With Screen Size
當選擇Scale With Screen Size時,可以根據屏幕的大小進行縮放,在此模式下有三種不同的縮放方式,如下所示:?
?
Reference Resolution屬性主要為參考分辨率大小,在此分辨率下進行設計,隨后根據不同的縮放方式適應不同的分辨率。?
Screen Match Mode包括 Match Width or Height, Expand,Shrink三種模式。?
Match Width or Height:根據Canvas的寬度或高度或者一定的比例進行縮放。?
Expand:Canvas不會小于設置的分辨率大小?
Shrink:Canvas不會大于設置的分辨率大小?
在分辨率自適應模式下,可能會帶來物體縮放問題,如果縮放不正常,可在代碼中手動更改localScale為(1,1,1)進行部分修正。
Constant Physical Size
當選擇Constant Physical Size模式時,則根據設定好的物理大小進行展示,根據不同分辨率適應性不是很好。
Graphic Raycaster組件:
?射線檢測組件,其作用是用于獲取用戶選中的UGUI控件,當禁用這個組件的時候用戶在無法獲取到控件對控件進行操作,其屬性為:?
Ignore Reversed Graphics :是否忽略控件的正面和反面方向,都接受射線的檢測,勾選則是。
Blocking Objects:屏蔽指定類型的(物理)對象,使它們不參與射線檢測。渲染模式不為ScreenSpaceOverlay時起作用。?
可選值為:?
None:不屏蔽任何物理對象?
Two D:屏蔽2D物理對象(即具有2D碰撞體的對象)?
Three D:屏蔽3D物理對象(即具有3D碰撞體的對象)?
All:屏蔽所有物體對象
Blocking Mask:使屏蔽對象中的指定層不參與射線檢測。渲染模式不為ScreenSpaceOverlay時,且Blocking Objects不為None時起作用。
轉載于:https://www.cnblogs.com/Study088/p/7290947.html
總結
以上是生活随笔為你收集整理的Unity中UGUI之Canvas属性解读版本二的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RabbitMQ消息幂等性问题
- 下一篇: MacBook如何设置双面打印