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