Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Ковыряем новый движок (моддинг) | страница 9
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 9 из 31
На страницу: Пред.  1, 2, 3 ... 8, 9, 10 ... 29, 30, 31  След.    Перейти:   Все страницы
Поиск в этой теме:
Канал X Rebirth » Модовый и скриптовый отсек X Rebirth: «Ковыряем новый движок (моддинг)»
MistR
 80 EGP


Рейтинг канала: 1(1)
Репутация: 29
Сообщения: 193
Откуда: Краснодар
Зарегистрирован: 25.12.2008
Но тут как я понимаю около 20к в ЛОДе, если да, то в полном масштабе у них будет около 60-70к... А станции? Тут станции по более будут. Да и кораблей в секторе не 20 штук летает...
_________________
НЕТ - Читам!!!
    Добавлено: 08:04 27-11-2013   
AlexYar
 1941 EGP


Рейтинг канала: 5(187)
Репутация: 325
Сообщения: 33077

Зарегистрирован: 26.10.2003
MistR :
Но тут как я понимаю около 20к в ЛОДе, если да, то в полном масштабе у них будет около 60-70к...


В 1 момент времени рендерится только 1 лод. В зависимости от удаления игрока переключается на другой. Так что максимальную полигональность можно смотреть по высшему лоду.

Станции тут круты конечно, но практически никогда в кадре не бывает так, чтобы на ней все лоды (всех блоков) были высшими. А если ползунок дальности видимости на минус отодвинуть - будет ещё меньше поликов. А если ещё и детализацию крутануть, так высшего лода вообще не увидишь Улыбка
    Добавлено: 08:12 27-11-2013   
MistR
 80 EGP


Рейтинг канала: 1(1)
Репутация: 29
Сообщения: 193
Откуда: Краснодар
Зарегистрирован: 25.12.2008
AlexYar :
Улыбка
Спс, я в курсе как это работает...)))
Просто хотел сказать что количество поликов выросло, хотя это мои догадки... Лоды тоже не одни их может быть несколько. Будем надеяться что это не самые дальние.)))
_________________
НЕТ - Читам!!!
    Добавлено: 08:34 27-11-2013   
Xwin
 80 EGP


Репутация: -2
Сообщения: 644

Зарегистрирован: 06.02.2007
Господа, а Вы уверены что торговля работала до патча 1.17 ?
В файле trade.performtraderun.xml (v1.17) добавлена одна строка

<set_command command="command.trade" param="$targetobject" />

Т.е. этот патч как раз торговлю и разрешил Улыбка Или это установка команды капитану ....

Скрипты move.undock.xml и move.unpark.xml (v1.17) вызывают друг друга, может возникнуть ситуация когда это станет бесконечным циклом

Последний раз редактировалось: Xwin (17:15 27-11-2013), всего редактировалось 2 раз(а)
    Добавлено: 16:21 27-11-2013   
HikeR
 145 EGP


Рейтинг канала: 4(57)
Репутация: 30
Сообщения: 886
Откуда: Великий Новгород
Зарегистрирован: 20.09.2005
все что знаю на текущий момент про файлы .xmf
темных пятен еще хватает даже в самом формате, не говоря уже про структуру моделей, поможите кто чем могет ;)
    Добавлено: 16:52 27-11-2013   
MistR
 80 EGP


Рейтинг канала: 1(1)
Репутация: 29
Сообщения: 193
Откуда: Краснодар
Зарегистрирован: 25.12.2008
HikeR, а в чем именно проблема?
_________________
НЕТ - Читам!!!
    Добавлено: 18:55 27-11-2013   
HikeR
 145 EGP


Рейтинг канала: 4(57)
Репутация: 30
Сообщения: 886
Откуда: Великий Новгород
Зарегистрирован: 20.09.2005
проблема в переменных с именами unknown*, я не знаю для чего они, к чему относятся и как к ним по жизни относиться. а также пока неясно где сидят банальные нормали и UV-координаты.
    Добавлено: 19:20 27-11-2013   
Andre_013
 55 EGP


Рейтинг канала: 1(3)
Репутация: 6
Сообщения: 48
Откуда: Украина, Харьков
Зарегистрирован: 19.11.2009
Xwin :
Господа, а Вы уверены что торговля работала до патча 1.17 ?
В файле trade.performtraderun.xml (v1.17) добавлена одна строка

<set_command command="command.trade" param="$targetobject" />

Т.е. этот патч как раз торговлю и разрешил Улыбка Или это установка команды капитану ....

Скрипты move.undock.xml и move.unpark.xml (v1.17) вызывают друг друга, может возникнуть ситуация когда это станет бесконечным циклом


На 1.15 работает без замечаний пока. Убрал масстрафик, увеличил jobs для мелких (класс М) втрое, так они нигде не простаивают и масстрафик заменяют. Носятся по трассам со страшной силой. Улыбка
    Добавлено: 22:33 27-11-2013   
HikeR
 145 EGP


Рейтинг канала: 4(57)
Репутация: 30
Сообщения: 886
Откуда: Великий Новгород
Зарегистрирован: 20.09.2005
как мог "продвинулся" в конвертере моделей, лежит рядом с шрифтогенератором, на выходе банальный Wavefront OBJ.

ручной запуск из корня:
Код:
tools\luajit.exe lua\xmf2obj.lua path_to_xmf [output_dir [output_name|dump]]

    path_to_xmf: путь к .xmf-файлу
    output_dir: выходной каталог, по-умолчанию "." (текущий)
    output_name: имя для модели, по-умолчанию "out"
    dump: вместо конвертации будут вытащены бинарные данные (для дальнейшего курения)


пример вывода (коменты мои):
Код:
==== xmf info: ==============
chunk headers:  2 x 188 bytes         // кол-во и размер чанков
     vertices:  34                    // кол-во вершин
      indexes:  48                    // кол-во индексов
        faces:  16                    // кол-во треугольников
    materials:  1                     // кол-во материалов

= chunks info: ======================
id1     part    id2     qty     bytes
-------------------------------------
0       0       32      34       x 24 // параметры чанков, три штуки неких айдишников,
30      0       30      48       x 2  // кол-во элементов и размер каждого из них

= materials: =========================
start   count   name
--------------------------------------
0       48      argon.ar_unique_02    // начальный индекс и кол-во индексов для выбранного материала


parse chunks data...
0-0-32-24:      FAIL, unknown, skip...    // вот тут случился облом, неизвестный чанк
30-0-30-2:      OK, indexes (2 bytes)...  // а тут все хорошо, хотя бы индексы есть

convert failed :(                         // но в итоге все равно облом, вершин не найдено


индексный буфер везде одинаковый, набор 30-0-30-2 для моделей с числом вершин меньше 64К, 30-0-31-4 — для остальных (то есть 2 или 4 байта под индекс).

однако даже вершины не везде можно отыскать с наскоку. практически все *-collision.xmf файлы имеют параметры 0-0-2-12, то есть 12 байт под одну вершину, 4 байта на координату, обычный float. нет ни нормалей, ни UV-координат, как раз для физической модели. но детализацию этих моделей я уже показывал, такие "болванки" не стыдно и в самой игре использовать как основные ;)

в других моделях вершинный буфер может быть от 14 до 64 байт на единицу. координаты обычно идут первыми, а вот что там еще напихано - тут я сдался. поэтому если вместо имени модели (последний параметр) написать "dump", то скрипт вытащит голые необработанные данные:
    chunk#N.bin - заголовок чанка, может быть 56 или 188 байт, первые 40 байт в нем известны, остальное надо изучать
    chunkdata#N_(0_0_32)_34x24.bin - сам буфер с непонятным содержимым, в скобках айдишники, а также кол-во элементов и размер каждого (произведение даст общий размер файла ;)

есть модели с двумя чанками (вершины и индексы), есть по 6-8 (последний всегда индексный), в остальных просто должны быть вершины, нормали и текстурные координаты (это просто необходимый минимум).

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

а вот примерно что уже можно надергать, некоторые части от Capital Destroyer (за неимением текстур материалы просто имеют разный цвет):



p.s.
и опять не перестаю удивляться эгософтовским моделлерам, обычный кубик у них имеет 36 вершин и 12 треугольников. поэтому если будет какое желание поработать с теми моделями, что получатся, то сначала их нужно прогнать через любой оптимизатор. иначе получится не модель, а набор отдельных несвязанных треугольников ;)
    Добавлено: 02:33 29-11-2013   
AlexYar
 1941 EGP


Рейтинг канала: 5(187)
Репутация: 325
Сообщения: 33077

Зарегистрирован: 26.10.2003
В хоумворде модели строились похожим образом, и тоже красились отдельно. В хоме-2 болванка модели была отдельно (её лоды тоже отдельно), а кроме болванки был ещё одной моделью набор всяких крышечек, антенн, лючков и прочего обвеса (сперва пропадал он при удалении, а потом уже лоды начинали переключаться).

Может и здесь так же?
    Добавлено: 05:44 29-11-2013   
HikeR
 145 EGP


Рейтинг канала: 4(57)
Репутация: 30
Сообщения: 886
Откуда: Великий Новгород
Зарегистрирован: 20.09.2005
здесь тоже так (как и во многих других играх) — детализация имеет отдельную модель (detail_*.xmf) и иногда даже свои собственные LOD-ы Подмигиваю

слева направо: детализация, максимальный lod, минимальный lod
    Добавлено: 14:26 29-11-2013   
bugaj
 50 EGP


Репутация: 0
Сообщения: 8

Зарегистрирован: 30.11.2013
Пытаюсь ковыряться в скриптах.

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

2) в trade.findfreetraderun.xml насколько я понял должен выполняться когда командир находится в состоянии "свободная торговля", но ничего в этом режиме он не делает. Хотя в файле описано, что нужно искать ордера на покупку если что то есть в карго и т.д. Т.е. либо скрипт не вызывается, либо не работает. Почему?

добавлено спустя 10 минут:
-<init>
-<do_if value="this.ship.commander">
<set_command command="command.trade"/>
</do_if>
-<do_else>
<set_command command="command.freetrade"/>
</do_else>
</init>

это значит что если в корабле сидит командир, то всегда будет выполнятся скрипт который бежит по очереди, которую ты дал кораблю, а не тот который на автоторговлю (freetrade)?

Последний раз редактировалось: bugaj (23:20 02-12-2013), всего редактировалось 5 раз(а)
    Добавлено: 23:05 02-12-2013   
DIMOSUS.X
 997 EGP


Рейтинг канала: 1(3)
Репутация: 188
Сообщения: 3252
Откуда: Vilnius/Minsk
Зарегистрирован: 06.08.2008
HikeR :
и такая ситуация куда не глянь. может быть движок умеет оптимизировать меши на лету, но что-то у меня сомнения в этом.

Любой уважающий себя движок умеет это делать. Видимо егософтеры побоялись, что весь их контент тогда влезет на пару CD и запилили не оптимизированные меши. Хотя это же егософт — может они и за одно и про оптимизацию порядка индексов в меше ни сном, ни духом...
А как они нормали хранят — небось не пакуют в три байта как все остальное прогрессивное человечество? И UV у них наверняка во float вмест half...
_________________
Даже ежики ежиков могут с трудом,
Иначе бы ежики были кругом.
    Добавлено: 00:38 03-12-2013   
Wizard
 265 EGP


Рейтинг канала: 1(2)
Репутация: 59
Сообщения: 1592
Откуда: Питер
Зарегистрирован: 06.08.2005
DIMOSUS.X :
HikeR :
и такая ситуация куда не глянь. может быть движок умеет оптимизировать меши на лету, но что-то у меня сомнения в этом.

Любой уважающий себя движок умеет это делать. Видимо егософтеры побоялись, что весь их контент тогда влезет на пару CD и запилили не оптимизированные меши. Хотя это же егософт — может они и за одно и про оптимизацию порядка индексов в меше ни сном, ни духом...
А как они нормали хранят — небось не пакуют в три байта как все остальное прогрессивное человечество? И UV у них наверняка во float вмест half...

Я, как человек несведущий в этой теме, воспринял половину текста примерно как "Циклопентанпергидрофенантрен"...
Ссори за офтоп.
_________________
Последний раз редактировалось: Wizard (18:24 25-04-2021), всего редактировалось 411 раз
    Добавлено: 01:27 03-12-2013   
HikeR
 145 EGP


Рейтинг канала: 4(57)
Репутация: 30
Сообщения: 886
Откуда: Великий Новгород
Зарегистрирован: 20.09.2005
DIMOSUS.X :
может они и за одно и про оптимизацию порядка индексов в меше ни сном, ни духом...

о какой оптимизации идет речь?

DIMOSUS.X :
небось не пакуют в три байта как все остальное прогрессивное человечество? И UV у них наверняка во float вмест half...

если бы не паковали и не экономили на спичках, то здесь уже бы импортер красовался ;)
    Добавлено: 06:06 03-12-2013   
AlexYar
 1941 EGP


Рейтинг канала: 5(187)
Репутация: 325
Сообщения: 33077

Зарегистрирован: 26.10.2003
bugaj :
насколько я понял должен выполняться когда командир находится в состоянии "свободная торговля", но ничего в этом режиме он не делает.


Потому, что в этом режиме он никогда не бывает. То, что написано в приказах в буковской версии - это отсебятина буки. Она ни коим образом не соответствует реальным командам, выполняемым капитаном. Если ты там видишь "свободная торговля", то это означает, что капитан выполняет приказ "следовать за..." Улыбка Если хочешь разобраться в игре/скриптах - запускай игру только с английскими настройками языка. Все другие локализации 100% чего-нибудь да отломают или что-то напортят (служебный тег отрежут, либо служебный маркер переведут, и он работать перестанет Улыбка).

bugaj :
-<init>
-<do_if value="this.ship.commander">
<set_command command="command.trade"/>
</do_if>
-<do_else>
<set_command command="command.freetrade"/>
</do_else>
</init>

это значит что если в корабле сидит командир, то всегда будет выполнятся скрипт который бежит по очереди, которую ты дал кораблю, а не тот который на автоторговлю (freetrade)?


Скорее всего на фритрейд способны только корабли неписей (у них нет явноназначенного капитана). Игроковые корабли всегда выполняют только приказы игрока или менеджеров станций. Это логическое предположение, времени глубоко копать в эту тему у меня ещё не было. Да и способов отдать приказ на свободную торговлю своему транспорту в игре нет.
    Добавлено: 07:30 03-12-2013   
DIMOSUS.X
 997 EGP


Рейтинг канала: 1(3)
Репутация: 188
Сообщения: 3252
Откуда: Vilnius/Minsk
Зарегистрирован: 06.08.2008
HikeR :
о какой оптимизации идет речь?

http://www.gamedev.ru/tip/?id=75
В своей последней заготовке графического движка у меня это выполнялось на стадии компиляции мешей в свой формат.
Интересно — у них есть модели с двумя UV? В X3:TC в UV2 запекалось AO освещение.
_________________
Даже ежики ежиков могут с трудом,
Иначе бы ежики были кругом.
    Добавлено: 10:13 03-12-2013   
bugaj
 50 EGP


Репутация: 0
Сообщения: 8

Зарегистрирован: 30.11.2013
AlexYar :


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


но сии файлы то можно поменять, значит можно и своим кораблям привить дух свободной торговли ) Ручная по 3 ордера если честно уже задолбала, и это у меня всего 3 транспорта еще. Поставил мод на "неисчезание" торговых предложений из памяти торгового компьютера, 8760 часов там стоит помнить. Но как то к утру опять все пропало ( Причем я сделал дальность сканирования торговых предложений и инфоточек 50 км, но от этого похоже только изменилась видимость этих точек, т.е. их видно издалека, но опять же в пределах прямой видимости, и чтобы торговое предложение стало активным (и добавилось в комп) к нему все равно нужно подлетать. Т.е. опять не торт. хотя возможно у меня просто не работает мод Гы-гы Т.к. наворачивать круги вокруг станций уже порядком задолбало (хотя похоже это единственное что можно делать в этой игре без багов). Хотелось бы как минимум, чтобы при влете в зону все ордера обновлялись и добавлялись в комп. Причем насколько я понял из скрипта на автотрейд - там если список ордеров не определен, то он видит все в пределах заданной области(капитал внутри сектора).

Последний раз редактировалось: bugaj (11:11 03-12-2013), всего редактировалось 1 раз
    Добавлено: 11:09 03-12-2013   
HikeR
 145 EGP


Рейтинг канала: 4(57)
Репутация: 30
Сообщения: 886
Откуда: Великий Новгород
Зарегистрирован: 20.09.2005
DIMOSUS.X :
http://www.gamedev.ru/tip/?id=75

использовать D3DX для оптимизации — очень странный совет.

а порядок следования индексов и наличие/отсутствие нескольких текстурных координат можете и сами. от 12 до 64 байт на вертекс в зависимости от модели, монохромные текстуры, там *такого* может понаверчено...
    Добавлено: 17:23 03-12-2013   
AlexYar
 1941 EGP


Рейтинг канала: 5(187)
Репутация: 325
Сообщения: 33077

Зарегистрирован: 26.10.2003
bugaj :
Ручная по 3 ордера если честно уже задолбала, и это у меня всего 3 транспорта еще.


Продай транспорты. Не торгуй, если задолбало. Не играй в конце концов. Но это не оправдания для чита с автоторговлей Улыбка
Неписи не должны играть за тебя. Либо тебе нравится вручную торговать и ты торгуешь, либо не играешь.

В этой игре надобности в атоторговцах нет никакой вообще. Для станций игрока всё нужное привозят приписанные туда транспорты. Этого более чем достаточно.
    Добавлено: 17:35 03-12-2013   
Канал X Rebirth -> Модовый и скриптовый отсек X Rebirth: «Ковыряем новый движок (моддинг)»
На страницу: Пред.  1, 2, 3 ... 8, 9, 10 ... 29, 30, 31  След.    Перейти:   Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Говорят вам, что экономика Аргона плоская и держится на трех Мамонтах - значит, так оно и есть! (Foks)

  » Ковыряем новый движок (моддинг) | страница 9
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18