面試Unity知識(shí)

1.resources 和 streamingAssets 文件夾的區(qū)別


?我在用了unity3d有一段時(shí)間后,在研究AssetBundle及播放音頻的時(shí)候,總算是弄清了他們的區(qū)別。當(dāng)時(shí)是想播放一段音頻,于是我把資源放在StreamingAssets目錄下,用WWW加載a.ogg,然后并沒(méi)有得到我想要的結(jié)果。但是放在Resources目錄下面,Resources.Load()卻能播放。后來(lái)經(jīng)過(guò)研究,終于知道了這么幾個(gè)概念的意思,也就清楚了前面為什么不能播放。

要說(shuō)明這個(gè)原因,首先說(shuō)一下AssetBundle。很多人應(yīng)該知道這是unity3d里面用來(lái)打包資源的,支持的格式有限,如文理、音頻、二進(jìn)制、文本等。像一些.cs文件、.mp4文件是沒(méi)法打包的。Resources目錄下的資源在打包之后,也會(huì)生成AssetBundle,只是Resources下的資源會(huì)被系統(tǒng)自動(dòng)處理。

那AssetBundle到底是什么呢?其實(shí)可以把它簡(jiǎn)單看成是一個(gè)資源集合,必須用WWW類來(lái)進(jìn)行讀取,而Resources可以看成是一個(gè)特殊的WWW,只能對(duì)于Resources目錄的資源。而WWW讀取的內(nèi)容也必須是AssetBundle,所以一個(gè)單獨(dú)的ogg文件無(wú)法用WWW讀取,必須先打包成AssetBundle,才能用WWW讀取。

? ? StreamingAssets又是什么呢?這是個(gè)Raw目錄,里面的內(nèi)容不會(huì)加密、編碼。比如png、ogg、AssetBundle文件,原來(lái)什么樣,打包就是什么樣。要使用這些文件的話,必須用對(duì)應(yīng)的類來(lái)訪問(wèn),如AssetBundle用WWW類,mp4用播放器插件加載(包括解析),用WWW加載mp4是不行的,因?yàn)樽R(shí)別不出來(lái)。

2.unity中的特殊文件夾


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容