Canvas的基本屬性
1.Canvas Scaler組件 :
Canvas Scaler組件用於設置處於不同組件下Canvas畫布中的元素的縮放模式。
Ui Scaler Mode : 設置UI的縮放模式:
Constant Pixel Size : 無論處於什么分辨率下Canvas下的UI控件都保持原來的大小。
Scale With Screen Size :在當前模式下,Canvas畫布下的UI控件會隨着不同的分辨率而進行一定的縮放,以達到合理的大小。
在這種模式下有一個選項:
Reference Resolution :設置當前窗口的分辨率,通常設置自己需要運行游戲的分辨率。
Match : 設置縮放的方向比例,當值為零的時候則只在寬度改變是進行縮放,當為1時則只在改變高度的時候進行縮放。
2.Canvas組件的渲染模式:
Render Mode 屬性設置的畫布的渲染模式 ,其中有三種渲染模式:
Screen Space - Overlay模式:
這種模式下是直接在屏幕上渲染顯示畫布的內容,即使畫布不在攝像機范圍類,或者當前沒有攝像機是畫布上的內容都會繪制出來。在這種模式下內部是集成了一個攝像機的,但我們無法操控這個攝像機。
在這種模式下,在不同的屏幕分辨率下畫布會自動適配屏幕的分辨率大小。
例如當禁用攝像機是圖像依然顯示在屏幕上:
Screen Space -Camera 模式:
在這種模式下,是將畫布放置在距離攝像機一定距離的視野中,畫布的內容都是通過攝像機來繪制,此時的畫布會跟隨着攝像機的移動而移動。當攝像機被禁用時畫布也不會顯示出來。
這種模式下當攝像機視野大小改變或者屏幕大小改變,畫布也會自動去適配。
RenderCamera:設置選用的攝像機
Plane Distance :設置攝像機距離畫布的距離
在這種模式下我們可以在畫布與攝像機之間添加3D模型,或者3D特效。
World Space 模式 :
這種模式下畫布會被當做世界空間中的一個模型來處理,它不會跟隨攝像機的移動,超出攝像機視野則不會再被顯示出來,這種模式下可以手動的設置畫布的位置,以及畫布大小,畫布不會再自動適配。
3.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時起作用。