1. 程式人生 > >Unity3d開發(十四) AssetBundle中的資源提取

Unity3d開發(十四) AssetBundle中的資源提取

做過破解的人都知道,遊戲中的美術資源沒法完全加密,即便使用特別複雜的加密方式,也有辦法將其中的資源提出來。這裡不討論的太深,只借助現成的工具,做些淺顯的資源提取。

解析 Bundle

disunity

這是基於Java實現的資源提取工具。它的優點在於Mac上也可以使用,另外就是支援命令列操作,這方便我們執行一些批處理操作。感興趣可以去開源專案的Github地址,中文的介紹雨鬆寫過一篇科普文

UABE

UABE(Unity Assets Bundle Extractor)是一個編輯AssetBundle的工具,可以將AssetBundle中的資源提取出來,也可以把編輯後的資源資訊存入AssetBundle。這不是個開源專案,它是使用C++編寫的。作者提供了靜態和動態庫,以方便程序進批處理程式中。另外它也提供了一個可視介面,雖然low了一點,但介面畢竟不是重點。它也有個

Github頁面,不過只用來反饋issue。介面如下:


使用時,先點選File->Open,然後選擇要匯入的AssetBundle,如果是壓縮過的Bundle,會彈出提醒,將檔案先另存為未壓縮的版本。點選Export可以匯出Assets,點選Import可以加入其他資源,並在File-Open中將其儲存。Info可以用來預覽Bundle檔案的詳細資訊。如果要匯出供其他軟體使用,需要勾選“Remove the TypeTree”。

預覽 Asset

Unity Assets Explorer

這是一個預覽Asset檔案內容的工具。可以在這裡下載,這個工具沒找到作者和程式碼出處,有知道的歡迎在下面留言。這個工具直接是個exe,對於這種莫名其妙下到的exe,我還是怕怕的,沒準那天誰往裡加個木馬呢。


點選Open Assets-file可以打開面板選擇資原始檔。載入後可看到詳細資訊,點選Extract All可以將檔案匯出到exe同級目錄,微微有些low 同時也會匯出一堆雜七雜八的二進位制,我猜想是檔案索引資訊。

Unity Studio

如果你的Bundle特別大,上面的那個工具就吃不消了。所幸後浪推前浪,就有了UnityStudio專案。它可以開啟Asset檔案預覽,理論上也可以提取Bundle,不過我並沒有成功。它也可以直接預覽圖片、shader、文字檔案,並分目錄匯出資源和模型。專案是用C#寫的,想定製些功能也可以自己改


基本上就介紹這麼多不吧,估計暫時夠用了

如果你覺得這篇文章對你有幫助,可以順手點個

,不但不會喜當爹,還能讓更多人能看到它...