Spine合批問題

1)Spine合批問題
2)使用HDR模式渲染RenderTexture產生的問題
3)Inspector的圖片預覽窗口異常
4)關於Unity 2019打包疑問


這是第196篇UWA技術知識分享的推送。今天我們繼續爲大家精選了若干和開發、優化相關的問題,建議閱讀時間10分鐘,認真讀完必有收穫。

UWA 問答社區:answer.uwa4d.com
UWA QQ羣2:793972859(原羣已滿員)

 

Rendering

Q:這裏用Unity導入了一個Spine文件,該Spine有兩張貼圖,在Unity中也生成了兩個對應的材質。現在有個問題是這個Spine的DrawCall很高,檢查後發現是這兩個材質在一直切換,也無法合批。請問這種Spine有什麼辦法合批來減少DrawCall嗎?

Spine的版本是3.6,Unity的版本是2017.4,如下圖所示,該Spine的DrawCall是55。

 

 

A:請參考官方說明
如果可以合併圖集,還是用一個圖集比較好,我們現在也是這樣用的。但是如果導出的圖集利用率不高或者實在太大,則考慮使用PropertyBlock。畢竟要增加一些代碼控制。

感謝黃程@UWA問答社區提供了回答,歡迎大家轉至社區交流:
https://answer.uwa4d.com/question/5e69f8d9438f7d0db495c7a1


RenderTexture

Q:使用RenderTexture渲染模型(帶特效)到UI上的時候,如果Camera開了HDR,在HDR Mode的格式爲FP16時,沒有出現問題,Alpha通道是有值的,但在使用R11G11B10格式時(Unity在中低端機上的推薦),Alpha通道就全是1,這樣就無法知道哪塊是透明的。現在項目只能在手機上判斷如果當前Camera.HDRMode是R11G11B10格式時,關閉這種Camera的HDR,但是特效跟模型都會差很多,想問一下大家有沒有遇到過這個問題?

PS:場景上的Camera使用哪種HDR Mode關係並不大,只是效果的區別而已,但是在UI上是直接沒有透明通道。

另外我在安卓機上直接用FP16也無法正常渲染透明通道,iOS上確是正常的。所以安卓上是不支持FP16嗎?

A1:FP16模式是ARGBHalf,每個通道16bit,帶Alpha通道。R11G11B10模式就沒有Alpha通道,一個像素32bit,R11bit,G11bit,B10bit。
感謝黃程@UWA問答社區提供了回答

A2:我在小米9和OPPO K1上均測試過,FP16模式的HDR是可以渲染出Alpha通道的。


上面的截圖是一個簡單的測試場景,渲染RenderTexture的相機背景使用SolidColor,普通相機背景是天空盒,場景中有一個透明的Sphere,球背後有一個Cube。
RenderTexture相機顯示透明通道的渲染效果

渲染RenderTexture的相機將Sphere和Cube渲染到1024x1024的ARGB32格式的RenderTexture中,生成的渲染的Temp RenderTexture(FP16格式)和我創建的New RenderTexture(R8G8B8A8格式)都保留了透明通道。

單獨的透明通道圖

然後再將這個New RenderTexture(R8G8B8A8格式)作爲RawImage的Texture,可以看到是可以透過這個RawImage看到另外一個相機的天空盒背景的。

感謝Xuan@UWA問答社區提供了回答,歡迎大家轉至社區交流:
https://answer.uwa4d.com/question/5e68b6374149350dbc5aec54


Editor

Q:如圖所示,想知道右上角那部分是怎麼出現的?我看不到開發中的那個工程,但是新建一個項目圖片是能看到的。

 

 

A:我曾經遇到過一個類似的問題,是由於Substance的插件放錯了目錄造成預覽窗口很多控件無法顯示。可以考慮查看是否有什麼插件造成影響,或者是meta文件有什麼問題,造成保存的各種屬性讀取錯誤。

感謝黃程@UWA問答社區提供了回答,歡迎大家轉至社區交流:
https://answer.uwa4d.com/question/5e71bbac4149350dbc5aec8e


Build

Q:下圖一張是Unity 2018的Build Setting,一張是2019.3.0f6的。想請問一下Unity 2019打包中的Gradle設置爲什麼不見了?

 

 

A:2019.3全部使用Gradle打包。點擊Build直接導出APK,勾選“Export Project”則能夠導出使用Gradle的Android Studio工程。

感謝黃程@UWA問答社區提供了回答,歡迎大家轉至社區交流:
https://answer.uwa4d.com/question/5e6f6a354149350dbc5aec84


今天的分享就到這裏。當然,生有涯而知無涯。在漫漫的開發週期中,您看到的這些問題也許都只是冰山一角,我們早已在UWA問答網站上準備了更多的技術話題等你一起來探索和分享。歡迎熱愛進步的你加入,也許你的方法恰能解別人的燃眉之急;而他山之“石”,也能攻你之“玉”。

官網:www.uwa4d.com
官方技術博客:blog.uwa4d.com
官方問答社區:answer.uwa4d.com
UWA學堂:edu.uwa4d.com
官方技術QQ羣:793972859(原羣已滿員)

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