Unity 制作不規則形狀button


在游戲開發中,我們有時需要制作不規則形狀的按鍵。

Unity3d中使用UGUI的Button控件只能實現規則的長方形按鈕。而通過給Button的Image組件添加對應的貼圖(sprite)我們可以實現外觀上的各異形狀,但是Button所在的矩形塊中的部分空白區域仍能相應點擊,如下圖所示

在本項目中, 我們利用unity的Image提供的alphaHitTestMinimumThreshold屬性, 這個屬性提供了一個閾值來限制射線檢測生效的alpha值。也就是說,比如我們將閾值設為0.5(該值類型為float,有效范圍0到1),那么點擊Image上像素的alpha值小於0.5的區域時,程序是不會檢測到點擊事件的。

1.編寫腳本設置image的alphaHitTestMinimumThreshold屬性

代碼第一行獲取button控件的image,第二行將image的alpha閾值設置為0.1。然后我們寫一個方法,每次按下按鈕時就進行一次計數並顯示,來測試是否按鈕為不規則按鈕

2.將對應的sprite的Read/Write Enabled設置打開

驗證一下效果:


免責聲明!

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



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