Jump to content
Korean Random
Polyacov_Yury

Центр управления танковыми моделями: Ремодомод и Шкуродёр

Recommended Posts

14 часов назад, azikoxxann сказал:

@Polyacov_Yury Допустим У меня есть 3Д стиль!  как я  могу усановить его через Шкуродер! и возможно ли это?

 

Не через Шкуродёр - через Ремодомод. 3Д-стили - это такие же ремоделинги, только от ВГ.

К Ремодомоду даже в шапке пак конфигов прилагается, в котором есть некоторые 3Д-стили.

Share this post


Link to post

Short link
Share on other sites

Я тут короче работаю в сторону того, чтобы добавить в Шкуродёр белые трупы танков.

Вопроса два.

1. Мой нехилый такой рефактор кода распаковщика, в который пока что трупы не включены и который я только что залил в шапку темы, мог повлиять на скорость распаковки моделей. Может ли кто-то затестить, была ли старая версия быстрее или я просто упрт?

2. Как лучше реализовать белые трупы так, чтобы юзеры не ставили их вместе с модами от других авторов? Включить текстурки с совпадающими названиями в базовую поставку Шкуродёра сразу и сделать так, чтобы трупы надо было выключать в настройках мода, или же положить в шапку отдельный .wotmod, наличие которого активирует распаковку и перекраску моделей трупов?

Share this post


Link to post

Short link
Share on other sites

@Polyacov_Yury дело твое конечно, как автора мода - но я считаю белые трупы и сбитые траки это лишнее уже есть отдельный мод.

Если уж ты хочешь добавить этот функционал - то по дефолту я думаю он должен быть выключен или как ты писал выше активироваться отдельным .wotmod.

 

P.S. Ссылка из топика не работает GoogleDrive.

Edited by Xotabych
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
1 час назад, Xotabych сказал:

белые трупы и сбитые траки это лишнее уже есть отдельный мод.

 

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

А так получится, что мод будет сам под патчи обновляться.

Модпаки станут легче, опять же. Вместо вотмода с кучей вижуалов нужно будет юзеру только скрипт поставить и бульку в конфиге поменять, остальное у него на машине сделается.

Ну а почему в Шкуродёр - потому что там код получается тот же. Так его можно переиспользовать, добавив несколько строк, а так его пришлось бы весь копипастить.

Share this post


Link to post

Short link
Share on other sites
2 часа назад, Polyacov_Yury сказал:

Я тут короче работаю в сторону того, чтобы добавить в Шкуродёр белые трупы танков.

Вопроса два.

1. Мой нехилый такой рефактор кода распаковщика, в который пока что трупы не включены и который я только что залил в шапку темы, мог повлиять на скорость распаковки моделей. Может ли кто-то затестить, была ли старая версия быстрее или я просто упрт?

2. Как лучше реализовать белые трупы так, чтобы юзеры не ставили их вместе с модами от других авторов? Включить текстурки с совпадающими названиями в базовую поставку Шкуродёра сразу и сделать так, чтобы трупы надо было выключать в настройках мода, или же положить в шапку отдельный .wotmod, наличие которого активирует распаковку и перекраску моделей трупов?

Кроме того что быстрее старая версия она и рабочая была, я представляю что будет на калькуляторе каком-то...

Распаковка будет вечность...

В этой же версии у меня почему-то не работают динамические шкурки, у союзников отображаются статические постоянно.

Хотя в конфиге прописано вот так

{
    "vehicles_estet": {
        "dynamic": {
            "ally": false,
            "enemy": true,
            "player": false
        },
        "static": {
            "ally": false,
            "enemy": false,
            "player": false
        }
    }
}

 

Edited by Xotabych

Share this post


Link to post

Short link
Share on other sites
1 час назад, Xotabych сказал:

Кроме того что быстрее старая версия она и рабочая была, я представляю что будет на калькуляторе каком-то...

Распаковка будет вечность...

В этой же версии у меня почему-то не работают динамические шкурки, у союзников отображаются статические постоянно.

Хотя в конфиге прописано вот так

{
    "vehicles_estet": {
        "dynamic": {
            "ally": false,
            "enemy": true,
            "player": false
        },
        "static": {
            "ally": false,
            "enemy": false,
            "player": false
        }
    }
}

 

 

Так. А python.log не дашь?

Share this post


Link to post

Short link
Share on other sites
32 минуты назад, Polyacov_Yury сказал:

 

Так. А python.log не дашь?

Skinner: total models check time: 0:01:06

python_old.log

 

Skinner: total models check time: 0:07:15

python.log

2 часа назад, Xotabych сказал:

В этой же версии у меня почему-то не работают динамические шкурки, у союзников отображаются статические постоянно.

@Polyacov_Yury  нашел уже косяк, сори - это мой...

 vehicles_Estet.wotmod\res\vehicles\ - нужно так vehicles_Estet.wotmod\res\vehicles\skins\textures\vehicles_Estet\vehicles\

Share this post


Link to post

Short link
Share on other sites
23 минуты назад, Xotabych сказал:

Skinner: total models check time: 0:01:06

Skinner: total models check time: 0:07:15

 

Так. Ага. А старая версия какие выдавала показатели?

Я просто на своей машине получал одинаковые числа на обоих алгоритмах: порядка 20 сек проверка, порядка 5 мин распаковка.

 

25 минут назад, Xotabych сказал:

@Polyacov_Yury  нашел уже косяк, сори - это мой...

 vehicles_Estet.wotmod\res\vehicles\ - нужно так vehicles_Estet.wotmod\res\vehicles\skins\textures\vehicles_Estet\vehicles\

 

Вот я в основном ради этого логи спрашивал, да :)

Рад, что нашёл, в чём дело.

Share this post


Link to post

Short link
Share on other sites

@Polyacov_Yury                               

Skinner: total models check time: 0:01:06 - старая версия

Skinner: total models check time: 0:07:15 новая.

Edited by Xotabych

Share this post


Link to post

Short link
Share on other sites

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

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
5 часов назад, StranikS_Scan сказал:

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

 

Я посчитал-посмотрел, в итоге получается, что трупы будут раза в два быстрее генерироваться, потому что для них .vt выпаковывать не надо будет.

Share this post


Link to post

Short link
Share on other sites
32 минуты назад, Polyacov_Yury сказал:

 

Я посчитал-посмотрел, в итоге получается, что трупы будут раза в два быстрее генерироваться, потому что для них .vt выпаковывать не надо будет.

 

13 часов назад, Xotabych сказал:

@Polyacov_Yury                               

Skinner: total models check time: 0:01:06 - старая версия

Skinner: total models check time: 0:07:15 новая.

Не знаю что там у тебя быстрее но по времени распаковки у меня старая версия в 7 раз быстрее. Причем в обеих вариантах набор модов один и тот же.

И при этом у меня не калькулятор, а что будет на ноуте древнем то я и не могу себе представить. Хотя что будет это уже писал @StranikS_Scan .

Edited by Xotabych

Share this post


Link to post

Short link
Share on other sites
43 минуты назад, Xotabych сказал:

Не знаю что там у тебя быстрее но по времени распаковки у меня старая версия в 7 раз быстрее. Причем в обеих вариантах набор модов один и тот же.

И при этом у меня не калькулятор, а что будет на ноуте древнем то я и не могу себе представить. Хотя что будет это уже писал @StranikS_Scan .

 

Сможешь в личке в Discord помочь мне разобраться, что я там такого нарефакторил, что скорость так просела? У меня есть несколько теорий, но проверить надо каждую, а на моем железе проблема несколько не воспроизводится...

Share this post


Link to post

Short link
Share on other sites

После долгого тестирования (убил на это два полных дня) выяснил следующее.

То, что я говорил про кеш жёсткого диска N времени назад, всё ещё в силе.

Первая перепроверка шкурок за аптайм компьютера занимает 20 секунд, все последующие - 3 секунды.

А поскольку я добавил 6-часовой кулдаун на проверки - то вылезает теперь только длинный вариант, да.

Пруф - cProfile. Который упорно мне говорит, что на проверках шкурок ResMgr.openSection в общей сложности то 17 секунд отжирает, то меньше одной.

 

Новую версию можно спокойно качать и пользоваться.

UPD. Залил ещё более новую версию. Теперь, если в конфиге включить isDebug, то по окончании распаковки моделей в лог вывалится полный отчёт от cProfile.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Итак, 1.13.

  • Ремодомод и Шкуродёр
    • На фоне рефактора модуля appearance_cache они теперь просто перехватывают CompoundAppearance.prerequisites(), поэтому они сломались только в 1.13 и больше ломаться не должны.

Share this post


Link to post

Short link
Share on other sites

Короче, надоело мне ковырять КамоСелектор, сел сделал то, что давно в Шкуродёре обещал.

  • Переписал прицепление моделей для динамических шкурок к танку с attach'а отдельных моделей на добавление частей к compoundModel.
    • Упростился код модуля.
    • Должен был слегка подрасти FPS.
  • Модели всего, кроме шасси, больше не увеличиваются в масштабе. Вместо этого они меняются местами со стандартной моделью.
    • Теперь поверх динамических шкурок отображаются декали попаданий и эмблемы, надписи и декали из меню внешнего вида.
    • Удобнее выцеливать уязвимые зоны - нет необходимости делать поправки на раздутую визуальную модель.
  • Увеличение масштаба катков уменьшено, так что теперь они не пролезают сквозь гусеничные ленты.
  • Добавлена распаковка моделей для белых трупов и сбитых гусениц. Для включения генератора нужно скачать и поставить отдельный пак "шкурок".
  • Убрано ненужное обращение к файлам при распаковке моделей. Должно ускорить распаковку относительно того, что я выкатил в прошлый раз.
  • Окончательно исправлена работа с трёхмерными стилями. Теперь шкурки для них отображаются корректно.

Вышеупомянутый пак "шкурок" для белых трупов и обновлённый собственно мод можно скачать в шапке темы.

Edited by Polyacov_Yury

Share this post


Link to post

Short link
Share on other sites
21.07.2021 в 20:01, Polyacov_Yury сказал:

с attach'а отдельных моделей на добавление частей к compoundModel

 

Кинь ссылку на код в гите, посмотреть о чем речь.

Share this post


Link to post

Short link
Share on other sites
2 минуты назад, StranikS_Scan сказал:

Кинь ссылку на код в гите, посмотреть о чем речь.

https://github.com/PolyacovYury/PYmods/blob/develop/source/scripts/client/gui/mods/mod_Skinner/processor/skins_dynamic.py

Модуль attached_models на данный момент не используется. Уапще. Удалять жалко было.

Share this post


Link to post

Short link
Share on other sites

Мдям.

После одного из последних обновлений вскрылся интересный баг то ли в логике загрузки боя, то ли в моем взаимодействии с клиентом.

Если коротко, то при перезаходе в бой vehicle.startVisual() вызывается раньше, чем успевает доделаться vehicle.appearance (вызваться vehicle.appearance.construct()).

Из-за чего что-то хорошенько отваливается и к игроку не прикрепляется танк.

В итоге эффекты разнятся от простого "клиент не реагирует ни на что" до "камера застряла в центре карты".

Как чинить - не знаю, потому как а) я уже чуть не схватил бан за бездействие в бою, б) там творится что-то непонятное.

Конструкция вида

@overrideMethod(Vehicle, 'startVisual')
def new_startVisual(base, self, *a, **k):
    if self.appearance.isConstructed:
        return base(self, *a, **k)
    BigWorld.callback(0.1, partial(new_startVisual, base, self, *a, **k))

не помогла.

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...