怎麼讓unity圖片UI透明部分不可點選或點選無效
阿新 • • 發佈:2019-02-13
在使用unity3d製作介面的時候需要用到UI圖片作為按鈕使用,有些背景透明的不規則圖片需要剔除透明部分,讓背景透明被點選的時候無效,只有點選到有顯示的圖片部分才響應點選事件。
方法/步驟
-
1
開啟untiy3d選擇GameObject--UI--Image。
-
2
然後會建立一個Image圖片,我們設定其位置大小等。
-
3
把我們透明背景的圖片型別設定為 Sprite(2D and UI)。
-
4
接著把圖片放到場景中的Image裡面,作為顯示圖片。
-
5
接著給Image新增Polygon Collider 2D
-
6
點選編輯按鈕,在裡面滑鼠拖拽建立網格,包含圖片顯示的部分。
-
7
接著在Image上面新增一個指令碼,Update裡面在滑鼠左鍵點選的時候響應事件。
if(Input.GetMouseButtonDown(0)){
if (GetComponent<PolygonCollider2D>().OverlapPoint(Input.mousePosition)) {
print("點選到圖片");
}
}
-
8最後執行場景,滑鼠點選到圖片顯示的部分就會得到輸出,透明的部分點選並沒有效果。