NGUI利用深度測試實現新手引導遮罩


實現原理:實際上就是先利用渲染隊列渲染,然后再利用ZTest,改變渲染的遮擋關系。

PS:Depth Testing:深度測試,也叫深度緩沖。只有最靠近觀察者的物體會被繪制。深度即Z,該值越小表示離觀察者越近,該值越大表示離觀察者越遠。

具體操作步驟:

1、修改NGUI的Unlit - Transparent Colored Shader,將ZWrite改為On。

2、創建3個Panel,分別為叫GameObject、Mask、Cutout,里面分別創建一個Sprite,

3、將Panel的渲染方式改為Explicit,渲染隊列分別改為3000(GameObject)、3002(Mask)、3001(Cutout),這一步會是渲染按照GameObject->Cutout->Mask的順序渲染。

4、調整他們的Z軸:GameObject為300,Mask為200,Cutout為100。這一步會使渲染的遮擋關系發生改變,會使Cutout擋住Mask。我們再把Mask下面的Sprite透明度調為1。最后神奇的事情出現了!


免責聲明!

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



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