Spine動畫如何才能不被UGUI遮擋

總所周知:
3D的物體(包括3D場景內的Sprite)都是3D場景內的,所以它的一定會被UI遮擋住,那下面我們來說點解決方案。
如何讓Spine動畫或者3D物體不被UI遮住。切能夠層級分明:

第一種方法

在做2D界面的時候,默認我們的Canvas的攝像機模式是這樣的
在這裏插入圖片描述
這樣的話,我們如果創建了UI全屏界面就一定會把3D物體遮擋了。
在這裏插入圖片描述
OK,那我們切換一下Canvas的Render Mode的模式
在這裏插入圖片描述
就會變成下面這樣
在這裏插入圖片描述
我這裏直接分成三層,以便大家理解。
Cube可以被UI遮住也可以遮住UI,這個就只是改變對象與攝像機的遠近就可以實現了。
如果你的還是沒實現,記得調一下你Cube的 layer(調到你攝像機可以看到的層級)
World Space也是可以的。
在這裏插入圖片描述

第二種方法(這個是用於Spine動畫的)

如果你在用Spine動畫了,那你就應該會知道如何導入吧,這個百度很多,看一下就會了,我這裏就不說了,
直接進入正題。
在這裏插入圖片描述
這兩種模式都可以。因爲我們現在做的是UI上的Spine動畫,默認創建出來的Spine動畫是3D場景內的,網上教程教你的基本都是這樣。那要如何才能不被UI遮擋呢?請看下面配圖。
在這裏插入圖片描述
直接在Canvas內創建Spine動畫。
下一步(因爲是公司項目,所以只能打馬賽克了,各位看官看圖標就成了)
在這裏插入圖片描述
先把參數填完(Animation要選出來,否則沒有動畫,Loop勾選可以循環方便你測試)
在這裏插入圖片描述

這樣就可以了(注意不要在運行中進行操作,否則動畫也不會動)

第三種辦法(通過實時渲染3D場景中的動畫)

我這裏只說實現的方法步驟
在3D中新建一個攝像機,照射3D場景的物體,,
然後使用Reader Texture渲染3D內的物體,然後顯示在UI中(例如RawImage).不過這個比較耗性能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章