Перейти к содержимому
Zone of Games Forum

SupHamster

Пользователи
  • Публикации

    142
  • Зарегистрирован

  • Посещение

Все публикации пользователя SupHamster

  1. UnityEX

    Я методом тыка выяснил, что в том конкретном случае проблема была не во время запаковки в бандл, а при паковке в resource ассет (ибо я из бандла ассеты извлёк и с ними напрямую уже химичил). Я в итоге подумал, что ошибка (проверил на нескольких версиях проги разных годов) Out of memory ReadStructVideoClip вылезала (при запаковке как ни странно всё ок, только после открытия модифицированного CAB-* ассета в UnityEx ошибка вылезала) из-за того что в ассет паковался видео файл размером ~200 Мб, но в последней версии это вроде исправилось, соотв. может и не в размере дело было. В бандл напрямую через команду import тоже заработало (плюс был ещё банд, где напрямую не работало и там тоже всё ОК), спс.
  2. UnityEX

    Бандл полтора гига, а разжатый 2, есть идеи почему такая шляпа вылезла (пробал с -ncomp - та же шляпа)? Upd: Вроде, если для импорта оставить только команду “UnityEX.exe importres "%%a"”, то ошибка не вылазит, правда я не уверен, что в таком случае всё корректно запаковывается, то бишь надо тестить. И ещё по поводу “Добавлена поддержка записи звуков и видео сразу в ресурс файл находящийся в бандле с учётом, что ресурс с индексом может быть не последним в архиве.” команда какая-то дополнительная нужна для консоли, чтобы это работало или как и если да, то пример команды в студию плз.
  3. UnityEX

    Да, иногда напрягает тема с длинными именами, ибо бывает сами бандлы в игре в нескольких поддиректориях запрятаны и имя у файла внутри ассетов бандлов километровое и тогда хоть путь делай D:\1 всё равно длинным окажется пока туда сами бандлы не запихнёшь. Не совсем понятно почему автор проги до сих пор никак не решил проблему (испольнования относительных путей не в счёт, ибо не всегда и не везде помогают). Если самому напряжно, то любой ИИ “на гора” выдаст за пару секунд решение: Delphi 7 по умолчанию использует ANSI-версии функций API, которые не поддерживают длинные пути. Вы можете использовать Unicode-версии функций API, такие как WideString и UnicodeString, чтобы обойти это ограничение. Пример использования Unicode-функций: uses SysUtils, Windows; var LongPath: WideString; FileHandle: THandle; begin LongPath := '\\?\C:\VeryLongPath\...\filename.txt'; FileHandle := CreateFileW(PWideChar(LongPath), GENERIC_READ, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); if FileHandle = INVALID_HANDLE_VALUE then begin ShowMessage('Не удалось открыть файл'); Exit; end; // Работа с файлом CloseHandle(FileHandle); end;
  4. UnityEX

    Удаление файлов из ассетов не планируется (добавление же есть)? В UABEA это есть давно (не буду расписывать зачем мне, но раз туда добавили — значит не бесполезная функция).
  5. UnityEX

    Не знаю предлагали ли (скорее всего да), но в качестве дальнейшего развития программы такая идея возникла: было бы удобно если б превью (хотя бы для картинок, в идеале конечно для всего что возможно) добавить (опционально), как в виндовом проводнике, например. Для этого желательно также сделать, чтобы при растяжении окна проги, при следующем запуске это не сбрасывалось. Ибо по интерфейсу программа проигрывает пожалуй всем известным аналогичным тулзам (UABEA, DevX).
  6. UnityEX

    Во время работающего впн такая шляпа вылезает, причём у меня на хром только трафик через впн идёт и всё равно ошибка всплывает. Не совсем понятно причём тут шрифты, я бы ещё понял, если бы программа не запускалась вообще...
  7. UnityEX

    Походу хард умирает. Проверил на другом - всё работает в плане распаковки, правда запись пока не тестил. Сорян за кипешь.
  8. UnityEX

    Где-то походу поломалось открытие больших бандлов после v1.10.7.0 ибо на данной версии по крайней мере разжимает бандл игры, а на последних версиях при разжатии происходит крэш проги без каких-либо ошибок. Хотя в итоге разжатый через v1.10.7.0 бандл всё равно не хочет распаковываться до конца через Export_bundles_root.bat из-за ошибки EStreamError.
  9. UnityEX

  10. UnityEX

    Бандлы размером более 8Гб прога не хочет разжимать, приходится UABEA юзать.
  11. UnityEX

    https://pixeldrain.com/api/file/dvQ7B41d/info/zip/Out of Touch/OoT_Data/StreamingAssets/sound1 что ни делай с саунд бандлом — конвертит в mp3 только при распаковке и если через консоль, а в гуи вообще fsb онли какой формат не выбирай.
  12. UnityEX

    Текущий метод конвертации BC7 ->DXT5 делает текстуры намного темнее. В моём случае, если вручную конвертить и добавить к texconv.exe в конце ключ “-srgb”, то всё норм. Также качество DXT5 текстур (после конвертации BC7 ->DXT5) оставляет желать лучшего, хотя это к тулзе texconv.exe вопрос (вроде с ключём “-bc u” качество лучше). Upd: перекомпилил https://workupload.com/file/y4TuWN9Cj7s тулзу, чтобы по умолчанию это делала (без мипмапов). UnityEx в GUI может определять тип/формат dds текстуры, поэтому, думаю не сложно добавить в консольный режим экспорт по определённому типу текстуры (допустим BC7 [id=25] только, ибо если кранчить обратно всё подряд типа курсоров и тп, то это будет кринжово смотреться или вообще приведёт к крашу игры). Нашёл ещё баг: извлекается битый (на картинке справа UnityEx, слева UABEA, где всё ОК) dds файл не важно его в BC7, DXT5, png, либо в ARGB извлекать, где вместо картинки рябь из цветных пикселей показывается, хотя размер файла вроде верный, кстати, resS файл почти 5 гиг, но в данном случае, думаю, дело не в этом, ибо ~70% извлеклись без проблем. Ключ -skip_error не совсем понятно, что делает, ибо с ним UnityEx продолжает сыпать предупреждениями, что нельзя сохранять dds в dtx не кратным 4, ругается на слишком длинный путь и тд.
  13. UnityEX

    Поломана (или изначально бажная) запаковка в (большие? в районе 3.5Гб после разжатия, может и с меньшими тоже) бандлы (см мой прошлый пост). Исходный формат картинок BC7, если что. После переконвертации UnityEx в DXT5, ARGB или после кранча, игра не видит картинки. v1.10.6.4: в гуи пакует очень быстро, что уже подозрительно, в игре картинки (причём их размер не важен — тот же, меньше, больше) не видны в итоге, в консоле пакует с большими проблемами или не пакует вообще (см мой прошлый пост) - итог тот же (битые картинки, в игре не видны как будто их нет вообще, т.е. полностью игнорируются игрой). v1.10.6.1: после доп. тестирования вплыли походу те же проблемы, что и с более новой версией. Предыстория та же, что и выше (речь идёт о больших бандлах, на простых ассетах не проверял). Разница более новыми версиями в том, что гуи пакует картинки не в ResS файл (хотя в настройках выбран ResS), а в ассет. Upd: В общем, если делать так: for %%a in (intro) do ( UnityEX.exe export "%%a" -nft -t dds -p ".\" ) for %%a in (intro) do ( if exist "Unity_Assets_Files\%%~na\" ( UnityEX.exe exportbundle "%%a" UnityEX.exe import "%%a" -nft -res -dds_force_import_to_crunch -p ".\" UnityEX.exe importbundle "%%a" ) ) то нифига не работает, но если так: for %%a in (intro) do ( UnityEX.exe exportbundle "%%a" -p "%CD%\" ) for %%b in (CAB-????????????????????????????????) do ( UnityEX.exe export "%%b" -nft -t dds UnityEX.exe import "%%b" -nft -res -dds_force_import_to_crunch ) for %%a in (intro) do ( UnityEX.exe importbundle "%%a" -p "%CD%\" ) del /q "CAB-*" то всё норм — сложно сказать в чём причина, то что баг это да, но из-за BC7, большого размера бандла, кранча или всего вместе вопрос.
  14. UnityEX

    texconv.exe/ConverterTexture.exe довольно медленно конвертит BC7 → DXT5 (использует видяху только если наоборот DXT5 → BC7 (кстати возможность такой обратной конвертации не помешала бы в UnityEx при запаковке), обновление тулзы не особо помогает, хотя работает чуть быстрее), было б неплохо добавить многозадачность (ключ типа -tasks), ибо у меня проц даже до 50% нагрузки не доходит, чтобы допустим сразу 5 процессов texconv/ConverterTexture (для обработки 5 dds) можно запускать. С “-nft” и “-dds_force_import_to_crunch” через консоль так и не хочет кранченные текстуры создавать/паковать. Отредактировал батник — заработало. Было: if /i "!flip!"=="-yflip" ( set infile=%~dpn2_FLIP%~x2 Copy /Y %2 "!infile!" "%~dp0..\ConverterTexture.exe" "!infile!" "!infile!" -flipv rem "%~dp0..\texconv.exe" -vflip -o %~dp2 -y "!infile!" ) "%~dp0crunch_x64.exe" -file "!infile!" -out %1 %3 -maxmips %5 if not exist %1 ( "%~dp0old\nwn_crunch.exe" -file "!infile!" -out %1 %3 -maxmips %5 ) if /i "!flip!"=="-yflip" ( del "!infile!" ) Стало: set infile=%2 set infile=%~dpn2%~x2 Copy /Y %2 "!infile!" if /i "!flip!"=="-yflip" ( "%~dp0..\ConverterTexture.exe" "!infile!" "!infile!" -flipv ) "%~dp0crunch_x64.exe" -file "!infile!" -out %1 %3 -maxmips %5 if not exist %1 ( "%~dp0old\nwn_crunch.exe" -file "!infile!" -out %1 %3 -maxmips %5 ) По поводу бандлов ещё такой вопрос: если c “-dds_force_import_to_crunch” в бандл (> 3Gb) паковать, то текстуры битые пакуются? В GUI вроде норм, только через консоль проблемы с паковкой, но в игре dds не будут видеться. for %%a in (animation.bundle) do ( if exist "Unity_Assets_Files\%%~na\" ( UnityEX.exe exportbundle "%%a" UnityEX.exe import "%%a" -res -dds_force_import_to_crunch -p ".\" UnityEX.exe importbundle "%%a" Если паковать в бандл через exportres/importres (см ниже), то dds пакуются, но всё равно сначала надо сделать “сухой” прогон (см в самом низу), иначе будет ошибка EStreamError, хотя dds будут в итоге нечитабельные (EReadError при распаковке и игра их не будет видеть). for %%a in (animation) do ( if exist "Unity_Assets_Files\%%~na\" ( UnityEX.exe exportres "%%a" UnityEX.exe import "%%a" -res -dds_force_import_to_crunch -p ".\" UnityEX.exe importres "%%a" ) ) В общем разобрался — если импортить в очень большой неразжатый предварительно бандл сразу, то получаем: но если сделать сначала “сухой” прогон (для разжатия бандла), то затем в бандл можно паковать, хотя всё равно в итоге будут проблемы с импортированными файлами (см выше). for %%a in (animation) do ( UnityEX.exe exportbundle "%%a" UnityEX.exe importbundle "%%a" )
  15. UnityEX

    Не знаю баг не баг, но BC7 (а по факту BC7 → DXT5 → crn, ибо экспорт в DXT5 теперь работает) кранчится, только если убрана галка переворачивать, даже если сначала запаковать DXT5 вместо BC7, а потом уже делать импорт в crn, батник pack_crunch.bat сегодняшний если что.
  16. UnityEX

    Проблема в том, что BC7 как раз в DXT5 у меня не экспортируются в UnityEx, вот ассет https://pixeldrain.com/u/f4daWrHg (слева на картинке открытый Spaceship-Drakir5.tex.dds после экспорта)
  17. UnityEX

    Кранчеры, насколько я понял, не могут напрямую паковать BC7 → crn, поэтому надо сначала через texconv.exe пережать, например, в DXT5 или RGBA и только потом уже кранчить. Отсюда вопрос, раз в UnityEx есть галка DX10 to DXT5, то хотелось бы увидеть и DX11 to DXT5 тоже для того, чтобы ”DDS force import to Crunch” работал на BC7 текстурах. В png, кстати, UnityEx тоже BC7 не конвертирует. Upd: даже если dds текстуру предварительно конвернуть в DXT5 из BC7, всё равно UnityEx не хочет как crn её паковать через ”DDS force import to Crunch”, можно только DXT5 без кранча импортировать и вообще BC7 dds тоже походу назад не пакуется, только так BC7 → DXT5 → ассет. И BC7 текстуры всегда перевёрнутые экспортируются независимо от выбора настроек переворачивания в UnityEx.
  18. UnityEX

    Теперь работает и после паковки игра не крашится.
  19. UnityEX

    Новая версия (v1.10.6.3 Ultimate) без конца сыпет ошибками — в прошлой такого не было. Ну хоть со скоростью вроде профиксилось...
  20. UnityEX

    Если “-nft” убрать (либо в pack_crunch.bat "%~dp0crunch_x64.exe" -file %2 -out %1 %3 %4 -maxmips %5 поменять на "%~dp0crunch_x64.exe" -file %2 -out %1 %3 -maxmips %5, что походу одно и тоже), то пакует без ошибки в указанный файл. Новая версия бажная: теперь экспортит из бандлов полчаса вместо одной минуты, хотя в прошлой всё ОК. Импорт (код ниже) тоже протестить (чтобы узнать профиксен или нет) не получилось, ибо ппц медленный... for %%a in (*.bundle) do ( if exist "Unity_Assets_Files\%%~na\" ( UnityEX.exe exportres "%%a" UnityEX.exe import "%%a" -p ".\" UnityEX.exe importres "%%a" Игру для эксперименов я в личку скину. Кстати, при конвертации fsb->wav UnityEx создаёт 0 байтные файлы (типа etfx_shoot_soul.snd_3BCF5FB98A8CBB34.fobj) там же, где сами бандлы при их распаковки.
  21. UnityEX

    Не жмуца .bundle файлы, не важно какого размера, UABEA тоже это подтверждает (не предлагает разжать при открытии). Нарыл прогу (медленная правда) для сжатия бандлов https://pixeldrain.com/u/QFK8JrU6 Usage: UBT.EXE <options> <infile> <outfile> Options: -c : Compress bundle file (must specifiy use of LZ4 or LZMA). Example usage: UBT.EXE -c lz4 decompressed_data.unity3d data.unity3d UBT.EXE -c lzma decompressed_data.unity3d data.unity3d Кстати importres руинит бандлы походу. После импорта игра крашится (для проверки у меня пакуются назад оригинальные ресурсы без изменений, сразу после экспорта). @echo off color a for %%a in (*.bundle) do ( if exist "Unity_Assets_Files\%%~na\" ( UnityEX.exe exportres "%%a" UnityEX.exe import "%%a" -res -p ".\" UnityEX.exe importres "%%a" ) ) del /q "*.resS" del /q "*.resource" Если по-старинке импортить через importbundle, то всё пучком. @echo off color a for %%a in (*.bundle) do ( if exist "Unity_Assets_Files\%%~na\" ( UnityEX.exe exportbundle "%%a" UnityEX.exe import "%%a" -res -p ".\" UnityEX.exe importbundle "%%a" ) ) del /q "CAB-*" И ещё не знаю баг не баг, но “-dds_force_import_to_crunch” в связке с “-nft” вызывает краш при запаковки RGBA32 текстур через консоль (из-за того что не создаётся .crn файл и UnityEx не может его найти), проверить можно, например, на файле “globalgamemanagers.assets/curcs.tex” https://pixeldrain.com/u/LkNvRVx2 из игры “NTR Apartment”.
  22. UnityEX

    У меня игра/бандлы на диске I: лежат в папке games — походу дело в этом. Кстати, сжатие бандлов формата .bundle не планируется делать (LZ4/LZMA), ибо, насколько я понял - это только для .unity3d бандлов сейчас работает?
  23. UnityEX

    после прогона данного экспорт батника в папке с кучей .bundle файлов у меня появилось почти столько же .temp файлов (86 бандлов и 81 темпаков, не появились темпаки только у бандлов, где нет CAB-*.resS файлов внутри, например, где только звуки) сколько самих бандлов в итоге, ошибок не было вроде. С одной стороны, можно добавить del "*.temp", но лучше если будет само чиститься, думаю. Самое интересное, что после импорта темпаки удалились сами.
  24. UnityEX

    UnityEX.exe export "test.bundle" -t ogm,webm,dds,tex,crn,fsb -p "C:\games\Test\Test_Data\StreamingAssets\aa\StandaloneWindows64" UnityEX.exe exportres "test.bundle" UnityEX.exe importres "test.bundle" Замутил такой батник для тестов — вроде работает, но, думаю, не помешал бы ключ для удаления импортированных кабов (которые создаются во 2й команде) на последнем шаге, что-то типа “-delcab” в конце.
  25. UnityEX

    -f для ассетов, -p для бандлов походу, ибо с 1м структура распаковки другая (нет папки CAB-*). Кстати, текстуры можно сразу в .bundle паковать без предварительной распаковки CAB-* файлов из бандла, проблема только в видео и аудио (ругается на отсутствие CAB-*.resource).
Zone of Games © 2003–2025 | Реклама на сайте.

×