Czy komuś udało się repackować AssetBundle z silnika Unity?
Ostatnio zauważyłem w grach na Switcha dużą tendencję w pakowanie TextAssets do AssetBundli. Nie wiem, czy w grach na PC też staje się to normą.
Są narzędzia do dekompresji i wypakowania jako rawy lub natywne formaty poszczególnych assetów, jednak problem polega na tym, że nie ma żadnego narzędzia do całkowitego rozpakowania assetbundli w natywnych formatach (jedynie część jest rozpoznawalna, reszta leci jako dump), przez co odpada ponowne spakowanie w Unity. A jeśli chcielibyśmy pracować na nieskompresowanym assetbundle'u, to nie ma narzędzi, które by pozwalały skompresować ponownie tą samą metodą.
AssetBundleExtractor używa LZMA i LZ4. To drugie jest częściej używane ze względu na szybkie dekodowanie, jednak jeżeli dobrze poszukałem na necie, to Unity używa lz4 w hc (najwyższy stopień kompresji), podczas gdy narzędzie używa standardowej kompresji. A niestety lz4net jest dostępne tylko jako biblioteka, nie ma pliku wykonywalnego.
Może ktoś tu już rozwiązał problem, bo google nie pomaga.
Repack AssetBundle
Regulamin forum
1. W miarę możliwości prosimy o załączanie plików przez nasze forum, nie na zewnętrznych serwerach. Pliki nie znikną wtedy po upływie pewnego czasu. 2. Jeśli chcecie uzyskać pomoc przy rozpracowaniu plików (np. z tekstem, czcionką) załączajcie je do postów - nie każdy przecież posiada tłumaczoną przez Was grę.
1. W miarę możliwości prosimy o załączanie plików przez nasze forum, nie na zewnętrznych serwerach. Pliki nie znikną wtedy po upływie pewnego czasu. 2. Jeśli chcecie uzyskać pomoc przy rozpracowaniu plików (np. z tekstem, czcionką) załączajcie je do postów - nie każdy przecież posiada tłumaczoną przez Was grę.
-
- Posty: 45
- Rejestracja: 24 gru 2018, o 20:05
Re: Repack AssetBundle
Dobra, znalazłem rozwiązanie. Jakby kogoś interesowało :
Zdekompresowany assetbundle jest również wczytywany poprawnie, jednak zmodyfikowany zdekompresowany assetbundle musi mieć taką samą wagę jak niezmodyfikowany zdekompresowany assetbundle, bo inaczej plik nie będzie w ogóle wczytany.
I każdy wewnętrzny plik assetbundle musi mieć również taką samą wagę jak pierwotnie, bo inaczej albo nie wczyta tego konkretnego pliku, albo się gra wykrzaczy. Przynajmniej jeśli chodzi o monobehaviour. Na szczęście pliki te mają duże zapasy pustej przestrzeni, więc można się pobawic.
Zdekompresowany assetbundle jest również wczytywany poprawnie, jednak zmodyfikowany zdekompresowany assetbundle musi mieć taką samą wagę jak niezmodyfikowany zdekompresowany assetbundle, bo inaczej plik nie będzie w ogóle wczytany.
I każdy wewnętrzny plik assetbundle musi mieć również taką samą wagę jak pierwotnie, bo inaczej albo nie wczyta tego konkretnego pliku, albo się gra wykrzaczy. Przynajmniej jeśli chodzi o monobehaviour. Na szczęście pliki te mają duże zapasy pustej przestrzeni, więc można się pobawic.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość