Jump to content
Zone of Games Forum

Recommended Posts

5 часов назад, Mikserr сказал:

Здравствуйте! Спасибо за утилиту, полезная вещь.
Вопрос следующий: распаковываю Unity archive (там tex файл) с конвертацией, получаю name.tex.prv. Эту текстуру перерабатываю как мне нужно, получаю Name2.tex.prv. Вопрос: как мне .prv запаковать обратно в Unity archive с заменой? Проблема в том, что prv не конвертируется обратно в tex.

Вы неправильно задали цитату  и вопрос Автору билда, уверен он разбкрётся и ответит Вам.
UPD.Некоторое время может быть весьма продложительным.

Edited by rugraver

Share this post


Link to post
В 13.03.2019 в 14:41, Mikserr сказал:

Здравствуйте! Спасибо за утилиту, полезная вещь.
Вопрос следующий: распаковываю Unity archive (там tex файл) с конвертацией, получаю name.tex.prv. Эту текстуру перерабатываю как мне нужно, получаю Name2.tex.prv. Вопрос: как мне .prv запаковать обратно в Unity archive с заменой? Проблема в том, что prv не конвертируется обратно в tex.

Вам необходимо переработанной текстурой заменять оригинальную, т.е. делать ее с тем же именем — name.tex.prv

Name2.tex.prv вам естественно не переконвертирует, т.к. с таким именем внутри архива текстуры нет.

 

Сам хотел бы задать вопрос по поводу сжатия файлов внутри архива unity3d.

После замены текстуры DDS (тот же размер что и у оригинальной) размер архива unity3d вырастает на 10-15%.

Я так понял в оригинальном архиве применено какое-то поджатие файлов.. можно ли ожидать в будущих версиях программы поддержки такого сжатия?

Share this post


Link to post
5 часов назад, aLLigator сказал:

Сам хотел бы задать вопрос по поводу сжатия файлов внутри архива unity3d.

После замены текстуры DDS (тот же размер что и у оригинальной) размер архива unity3d вырастает на 10-15%.

Я так понял в оригинальном архиве применено какое-то поджатие файлов.. можно ли ожидать в будущих версиях программы поддержки такого сжатия?

Это не сжатие, это текстура записывается не в res файл, а в самый главный архив. Res файл в unity3d находятся внутри и называются СAB-… которые предварительно нужно распаковывать перед распаковкой текстур.

В ресурсы обратно можно запихать, нужно запустить запаковку через консоль с настройкой -res, но тогда ещё придётся запаковывать этот ресурс файл, через importbundle или через gui даже не пробовал.

Есть ещё настройка -ncomp запаковка вообще без сжатия этих unity3d, но это уже другое

Посмотрите настройки программы в шапке или запуском в консоли “UnityEX.exe help”

Share this post


Link to post

Благодарю за ответ!

Попробовал распаковать командой exportbundle и получил САВ в два раза больше чем сам архив unity3d.

Ради интереса попробовал запаковать его же обратно командой importbundle  и получил архив unity3d так же в два раза больше оригинального.

Нужно указывать какие-то дополнительные аргументы в командной строке?

 

Share this post


Link to post

Может он не сжался через importbundle, хотя должен был либо сжатие отличается, которое в файле unity3d. Можно попробовать через gui извлечь и вставить cab. Кроме запаковки без сжатия настроек для этого никаких больше нет.

Share this post


Link to post

Если будет время, гляньте пожалуйста: https://drive.google.com/file/d/1XwcID50BjZW6rqbHCUTHPbQ66WE0_a28/view?usp=sharing

Внутри сам архив unity3d и DDS которым подменяю оригинал.

P.S. Архив для скачивания не очень большой, всего 11 Мб.

Share this post


Link to post
21 минуту назад, aLLigator сказал:

Если будет время, гляньте пожалуйста: https://drive.google.com/file/d/1XwcID50BjZW6rqbHCUTHPbQ66WE0_a28/view?usp=sharing

Внутри сам архив unity3d и DDS которым подменяю оригинал.

P.S. Архив для скачивания не очень большой, всего 11 Мб.

Этот cab не причём, в нём звуковые файлы. В принципе сжимает, но получается размер чуть больше на 3мб. А через importbundle похоже не сжимает. Так что с запаковкой всё нормально, а отличается сжатие.

А зачем делать размер сжатого под оригинал? Это никак не сделать, если только меньше, изменяя алгоритм или что-то вырезая из архива, не знаю возможно ли метод сжатия на более компактный изменить в этом LZMA.

Edited by DragonZH

Share this post


Link to post
11 минут назад, DragonZH сказал:

В принципе сжимает, но получается размер чуть больше на 3мб.

Да, я так и писал в первом сообщении, размер больше на 10-15%, хотя заменяется файлик меньше чем на 200 Кб таким же что был внутри.

11 минут назад, DragonZH сказал:

А зачем делать размер сжатого под оригинал?

Это со вчерашним обновлением такое c этими архивами unity3d ввели..

Раньше я перепаковывал архивы и получал на выходе файлы совпадающие по размеру с оригиналами, что позволяло сделать патчер по разнице байт между оригинальным и измененным архивами. Так было проще делать МОДификацию, когда пользователю не нужно самому заморачиваться с перепаковкой. Получался готовый патчер (даже меньшего размера чем суммарно размеры измененных текстур DDS) который автоматом (и быстрее чем перепаковка всех нужных архивов) все сам делал. К тому же это позволяло делать версию с откатом измений.

Share this post


Link to post

Тут никак не сделать под оригинал. $40 Без сжатия $41 LZMA $03 $02 LZ4, тут используется всё таки LZ4, в коде не меняется степень сжатия. Если поменять алгоритм на LZMA то весить будет 9mb, но даже не знаю будет ли такое работать.

32 минуты назад, aLLigator сказал:

Раньше я перепаковывал архивы и получал на выходе файлы совпадающие по размеру с оригиналами, что позволяло сделать патчер по разнице байт между оригинальным и измененным архивами. Так было проще делать МОДификацию, когда пользователю не нужно самому заморачиваться с перепаковкой. Получался готовый патчер (даже меньшего размера чем суммарно размеры измененных текстур DDS) который автоматом (и быстрее чем перепаковка всех нужных архивов) все сам делал. К тому же это позволяло делать версию с откатом измений.

Из UnityEX тоже можно собрать патчер.

Share this post


Link to post
49 минут назад, DragonZH сказал:

Из UnityEX тоже можно собрать патчер.

Буду благодарен если  подскажете как это сделать.

Может это будет приемлимым решением для новых версий архивов.

Share this post


Link to post
3 часа назад, aLLigator сказал:

Буду благодарен если  подскажете как это сделать.

Может это будет приемлимым решением для новых версий архивов.

Всё это через консоль делается. Запаковка файлов UnityEX import “shared7.unity3d” Остальное всё в установщике или в том же батнике.

Share this post


Link to post

Т.е. просто обернуть UnityEX автоматизацией процесса? я видимо неправильно вас понял.. автоматическую запаковку нужного сделать не сложно, мне просто хотелось приблизить к предыдущему варианту (где UnityEX использовался только на этапе сборки и не входил в состав самого патча) и думал что в программе доступен подобный функционал.

Но все равно благодарю за помощь!

 

P.S. А не подскажите еще такой момент, при сжатии LZ4 учитывается все содержимое целиком или каждый файлик пакуется отдельно? А то у меня получаются на выходе разные архивы (в том числе и по размеру), когда распаковываю все DDS, подменяю нужный и запаковываю все вместе обратно и когда просто кладу в нужную папку нужный DDS и запаковываю.

Edited by aLLigator
вопрос по LZ4

Share this post


Link to post
15 часов назад, aLLigator сказал:

Вам необходимо переработанной текстурой заменять оригинальную, т.е. делать ее с тем же именем — name.tex.prv

Name2.tex.prv вам естественно не переконвертирует, т.к. с таким именем внутри архива текстуры нет.

 

Сам хотел бы задать вопрос по поводу сжатия файлов внутри архива unity3d.

После замены текстуры DDS (тот же размер что и у оригинальной) размер архива unity3d вырастает на 10-15%.

Я так понял в оригинальном архиве применено какое-то поджатие файлов.. можно ли ожидать в будущих версиях программы поддержки такого сжатия?

Нет, я распаковал архив с конвертацией — получилось Unity_Assets_Files\Archive1\Textures\name.tex.pvr. Я изменяю этот пвр, называю его так же и заменяю файл в распакованном. После чего я архивирую обратно. 
Но вот если я этот архив пересобранный опять распакую, этот name.tex.pvr будет битый, поскольку не открывается в редакторах. Соответственно, что-то тут делается криво. Я предполагаю, что UnityEX просто запаковывает pvr файл в архив без конвертации в tex, из-за чего что-то нарушается.
Вообще я пытаюсь перевести одну маленькую игру на русский язык, где все надписи в заархивированных tex.

Share this post


Link to post
2 минуты назад, Mikserr сказал:

что-то тут делается криво.

Возможно это вы сохраняете измененный PVR не с теми параметрами что нужно. При конвертации программа пытается из неправильного подформата PVR переконвертировать в ТЕХ с тем подформатом что зашит внутри и так получаем ошибку.

Если нет секретности — скиньте оба файла сюда (оригинальный и измененный), возможно я смогу что-то подсказать, т.к. тоже имел дело с PVR текстурами.

Share this post


Link to post
18 минут назад, aLLigator сказал:

Возможно это вы сохраняете измененный PVR не с теми параметрами что нужно.

Не отрицаю вину своих рук)

Облако
2ce39aad640e24f0f9c92c5bf4e408bc — это изначальный игровой архив.
Slap.3.tex.pvr — это то, что я распаковал с конвертацией через UnityEX.
В папке “Переработка”:
Slap.3.tex.png — изначальное изображение полученное из файла выше, которое я уже перевел на русский; вот его-то мне и нужно обратно запаковать в игровой архив.
Slap.3.tex.pvr — переведенное изображение выше, которое я при помощи PVRTexTool снова конвертировал в pvr. Использовал “Save As...”,  может, мне стоило использовать “Save As Legacy...”, (там какой-то PVR V2, но тоже с разрешением .pvr)?

В общем, если удастся запаковать переведенную версию в архив в работоспособном состоянии — буду безмерно благодарен.

Edited by Mikserr

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



Zone of Games © 2003–2024 | Реклама на сайте.

×