Форум Oni

Русскоязычный форум поклонников игры «Они» от Bungie

  • Здравствуйте, Гость

#1 20-01-2009 16:11:31

doktordulit (муж.)
Элитный спецназ TCTF
Откуда: Рига
Регистрация: 07-10-2008
Сообщений: 478
Профиль

OniSplit

Может есть здесь где-то такая тема но я иё не нашел поэтому решил создать новую...Как сказал сказал когда-то
Reddog,(Тьфу WaRDoG.На форуме так много догов!)-Итак приступим...
1-Как с его помошью выдрать текстуры из игры?
2-Как с его помошью выдрать звуки из игры?
3-Как с его помошью сконвертировать из .oni в .png?(Если такое возможно)
4-Как с его помошью сконвертировать из .png в .oni?(Если такое возможно)

Отредактировал(а) doktordulit (29-03-2009 14:05:12)


http://yoursmileys.ru/tsmile/stamp/t2708.gif

Оффлайн

 

#2 20-01-2009 23:13:27

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: OniSplit

Темы, вроде бы, не было. По мере поступления вопросов и ответов будем править первые несколько сообщений, придавая им качество справочника.

Прежде всего напоминаем, что такое ОниСплит. Это программа, написанная на C# и требующая (на ПК) наличия .NET 2.0. В современных Окнах .NET установлен по умолчанию.
ОниСплит поставляется с Эдишном (давно не было релиза; в скором будущем может появиться...), но помимо Эдишна обновляется и используется как самостоятельная прога.
Скачать можно здесь, там же находится некоторое количество более или менее устаревшей документации на аглицкой мове: http://wiki.oni2.net/OniSplit

ОниСплит сделан прежде всего для того, чтобы управляться с бинарными ресурсами Они, что раньше было трудоёмким и очень ограниченным занятием.
Программа умеет распаковывать так называемые инстенс-файлы .dat в самостоятельные модули .oni  и комбинировать модули обратно в инстенс-файлы.

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

Наконец, ОниСплит позволяет конвертировать модули из бинарного формата .oni в более удобные для работы формы (например, в текстовый формат XML).
Однако работа с ОниСплитом, конечно, всё ещё требует хорошего понимания того, как ресурсы взаимодействуют между собой, с движком, и со скриптами.

Командная строка OniSplit сильно зависит от того, где лежат инстенс-файлы, модули .oni, и сам ОниСплит. В примерах ниже приведены "примерные" пути.

"1-Как с его подмогой выдрать текстуры из игры?"
papka\gde\lezhit\programma\OniSplit.exe -extract:png papka\kuda\pojdut\kartinki papka\gde\lezhat\moduli\txmp\TXMP*.oni
или
papka\gde\lezhit\programma\OniSplit.exe -extract:png papka\kuda\pojdut\kartinki papka\gde\lezhat\instance\fajly\level*.dat
Естественно, вместо "всех" текстур можно выдрать только некоторые, а также фильтровать по имени текстуры или инстенс-файла.
Кроме того, некоторые онишные текстуры хранятся в форматах, которые не могут быть сэкспортированы в PNG "один-в-один" (сжатие, анимация, блики)
Кроме BMP и PNG, ОниСплит поддерживает форматы TGA и DDS (а последний - поддерживает сжатие). Анимация и блики сохраняются в отдельных файлах.

Кроме того, с недавних пор есть возможность экспортировать текстуры без потери информации. Картинки сохраняются в TGA, а мета-данные - в XML.
Именно из такого формата удобнее всего импортировать текстуры (см. ниже). В противном случае в командной строке надо писать ворох параметров.

"2-Как с его подмогой выдрать звуки из игры?"
papka\gde\lezhit\programma\OniSplit.exe -extract:wav papka\kuda\pojdut\zvuki papka\gde\lezhat\moduli\sndd\SNDD*.oni
или
papka\gde\lezhit\programma\OniSplit.exe -extract:wav papka\kuda\pojdut\zvuki papka\gde\lezhat\instance\fajly\level*.dat
Если вы работаете с Маковой версией, то формат звуков отличается: вместо -extract:wav надо использовать -extract:aif

"3-Как с его подмогой сконвертировать из .oni в .png?(Если такое возможно)"
см. выше (1)

"4-Как с его подмогой сконвертировать из .png в .oni?(Если такое возможно)"
Функциональность онишных текстур превосходит функциональность картинок, будь то в формате PNG или TGA или ...
Поэтому при импортировании из голых картинок требуется много дополнительной информации о назначении текстуры.
<program> -create:txmp <target directory> [-genmipmaps] [-nouwrap] [-novwrap] [-format:bgr32|bgra32|bgr555|bgra5551|bgra4444|dxt1] [-envmap:texture_name] <filename>
В этой типовой командной строке угловыми скобками обозначены пути, а квадратными - необязательные настроечные параметры.
-envmap:hrjuk прописывает для данной текстуры имя другой текстуры TXMPhrjuk, которую следует использовать в качестве блика.
-format определяет битность цвета, наличие дополнительного канала "alpha" для прозрачности/отражаемости, или сжатие (DXT1).
-genmipmaps заставляет ОниСплит сгенерировать уменьшенные версии текстуры для эффективного отображения на расстоянии.
-nouwrap и -novwrap отменяют периодическое повторение текстуры вдоль оси U и/или V. Редкий финт, но о нём следует помнить.
Это самые важные параметры, однако у Онишных текстур есть множество других настроек. Более мощный метод - импорт из XML:
papka\gde\lezhit\programma\OniSplit.exe -create papka\kuda\pojdjot\tekstura papka\gde\lezhit\xml\barmaglot.xml


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#3 21-01-2009 20:18:00

demos_kratos (муж.)
Рядовой чатланин
Откуда: Волжский
Регистрация: 25-07-2008
Сообщений: 694
Профиль  Вебсайт

Re: OniSplit

недавно начал перерабатывать OniSplit GUI на Visual BASIC, ждите первой версии =)


I would put a tax... on all people... who stand... in water.
........
OOH!

Оффлайн

 

#4 21-01-2009 22:48:33

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: OniSplit

Твой первый гуй мне понравился. Хотелось бы по возможности полный набор функциональностей...
А как ты относишься к интеграции в твой гуй более-менее продвинутого инсталлятора для Эдишна?
На данный момент идея такая: создать некий набор плагинов, и комплектовать их перед запуском.
Скриптовые папки тоже переключать  перед запуском либо в рантайме. Информацию читать из .txt


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

#5 22-01-2009 15:11:50

demos_kratos (муж.)
Рядовой чатланин
Откуда: Волжский
Регистрация: 25-07-2008
Сообщений: 694
Профиль  Вебсайт

Re: OniSplit

по ходу дела придёться вернуться на AutoIt 3 ибо OniSplit отказывается принимать командную строку из VB

инсталлятор надо писать отдельно наверное, потому-что ОниСплит как-никак тульза для моддинга, а АЕ - аддон для игры, и уровень немного разный...
ну я посмотрю что там можно сделать и как обойтись без батников...


I would put a tax... on all people... who stand... in water.
........
OOH!

Оффлайн

 

#6 26-01-2009 19:45:14

demos_kratos (муж.)
Рядовой чатланин
Откуда: Волжский
Регистрация: 25-07-2008
Сообщений: 694
Профиль  Вебсайт

Re: OniSplit

так, есть проблема
я вырвал модель допустим барабаса в формате DAE, когда пытаюсь переделать ее обратно в TRBS без изменений, онисплит выдаёт оштбку - Неверный формат входной строки


I would put a tax... on all people... who stand... in water.
........
OOH!

Оффлайн

 

#7 27-01-2009 01:12:27

geyser (муж.)
Учёный Синдиката
Откуда: угадайте
Регистрация: 24-06-2007
Сообщений: 1352
Профиль  Вебсайт

Re: OniSplit

Боюсь, при таком объёме информации мне ответить нечего. Какая входная строка, какая версия Сплита?
Появляйся в аське, разберёмся. А если возникнешь в YIM - сможешь напрямую взаимодействовать с Нео.


Если у тебя есть фонтан, заткни его; дай отдохнуть и фонтану.

Оффлайн

 

Board footer

© 2006-2024 Амэ & Mih@
ОНИмия – фан-сайт игры Oni
Движок форума - модифицированный PunBB