什么是錨點


你的圖像錨定在屏幕中央,但什么是錨點呢?在選擇圖像后,觀察 Scene 視圖
 
 
 
Select image to expand
 
 
屏幕中央的十字就是圖像的錨點。這是計算對象位置時的起點(由綠色箭頭顯示,從圖像的錨點到圖像的軸心(即小藍色圓圈))。
 
 
因此,在調整屏幕大小時,該位置將保持不變,並且圖像不會隨着屏幕邊框移動。
 
 
要解決此問題,你需要將圖像錨定到一個角。這樣,如果由於調整了屏幕大小而移動了該角,則圖像將保持在相同的距離內並隨之移動。
 
 
要將圖像錨定,請執行以下操作:
 
 
1.你可以使用 Rect Transform 直接移動錨點,但是 RectTransform 允許我們直接將錨點錨定到一個角上。
 
 
2.單擊 Rect Transform 左上角的正方形,然后選擇左上角的選項。
 
 
 
 
Select image to expand
 
 
你可以在 Scene 視圖中看到錨點已經移動到這個角。
 
 
還要注意,Rect TransformPos XPos Y 已更改:現在是從畫布的角(而不再是中心)開始計算的!
 
 
確保圖像在這個角的位置,現在調整屏幕大小時,UI 會保持在這個角的位置!
 
 
還可以將游戲對象從 Image 重命名為 Health,這樣我們就知道這是生命值的 UI。使用 Inspector 頂部包含“Image”的文本框,並將內容更改為 Health

 

現在,你需要添加 Ruby 的肖像以及藍色條來完善我們的 Health UI
 
 
要添加肖像,請執行以下操作:
 
 
1.Art > Sprites > UI 中找到肖像,名為 CharacterPortrait
 
 
2.創建一個新圖像作為 Health Image 的子對象,將找到的肖像分配給這個子對象,單擊 Set Native Size 並調整其大小(同時按住 Shift 鍵可保持相同的比例,不會壓扁!)。嘗試調整為不同大小,並移動到生命值條背景的藍色圓圈中,直到對結果滿意為止。
 
 
 
 
Select image to expand
 
 
你這里實際上並不需要更改錨點,因為已經錨定在父級(在我們這種情況下為 Health 游戲對象)的中心。所以,在通過調整屏幕大小來移動 Health 游戲對象時,中心也會移動,並且肖像也將隨之移動。
 
 
但是,如果水平調整生命值條對象的大小,中心位置將會更改,因此會移動肖像的位置,但不會調整肖像的大小:

 

 

這是因為錨點不僅定義位置,還定義大小。如果按下 Rect Transform 組件中的錨點按鈕,然后選擇右下角的展開藍色箭頭,則會看到作為錨點的 4 個箭頭移動到父圖像的 4 個角
 
 
現在圖像大小不是絕對值,而是相對於這些錨點之間的距離的值。因此,如果圖像大小在左右錨點之間為 25%,若將錨點移近(例如通過調整大小),則圖像將調整大小以保持在該比例之內:
 
 
 

 

 

  3.要正確調整生命值條的大小,請更改 Rect Transform 以拉伸和移動錨點。為此,可以單擊並拖動錨點,讓錨點圍住肖像。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM