HLFX.Ru Forum
Показать все 549 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- PrimeXT - логическое продолжение XashXT (https://hlfx.ru/forum/showthread.php?threadid=5371)


Отправлено SNMetamorph 11-10-2019 в 07:34:

Exclamation PrimeXT - логическое продолжение XashXT

Поскольку Дядя Миша завершил работу над Xash-движком и XashXT, мной было принято решение создать форк XashXT, в котором я хочу воплотить в жизнь следующие планы:

Написал сюда только те аспекты, которые вспомнил. Возможно что-то упустил.

1. Актуальная документация, на русском и английском языках
2. Поддержка современных компиляторов и IDE
Иначе говоря: упростить всю возню до уровня "скачал код, открыл IDE, и начал клепать очередную Зону 51"
3. Рефакторинг кода
Если кратко: сделать логичную и удобную структуру каталогов в репозитории и раскидать все исходники по ней.
Ещё первое что приходит в голову - для каждой энтити сделать отдельную пару .h/.cpp файлов.
4. Окончательно пофиксить все проблемы, связанные с лагами от wpoly (на видеокартах AMD в частности)
5. Прикрутить графические плюшки и систему материалов с удобным интерфейсом
Насколько я знаю, что-то такое уже реализовано в P2. Коли так, то буду от неё отталкиваться.
6. Кроссплатформенность
Предполагается что форк будет использоваться со свежей версией FWGS-форка движка. Так что можно сказать, что по этому аспекту не будет особых трудностей.

Суть этой всей задумки проста: предоставить моддерам простой и удобный SDK для разработки игр под движок Xash3D.
Сам лично я планирую разрабатывать форк и параллельно внедрять наработки к себе в мод. В итоге получается двойная польза.

Этим постом я просто решил сообщить о своих намерениях. Возможно, это повлияет на чьи-то планы касательно разработки мода.
Пока еще в этом направлении ничего не готово - работу планирую начать летом 2020 года, поскольку освобожусь от учёбы я только к тому времени.
В свою очередь я хочу, чтобы здешний народ дал мне знать, есть ли спрос на подобные вещи. К посту прикреплю опрос, будьте добры проголосовать.


Отправлено nemyax 11-10-2019 в 07:49:

Ответил да, потому что кроссплатформенного xashxt-fwgs неко кова, похоже, не будет.

Добавлено 11-10-2019 в 10:49:

Цитата:
SNMetamorph писал:
Поддержка современных компиляторов и IDE

Если тебе интересно, есть доведённый до компилябельного состояния проект для VS 2008 SP1.


Отправлено SNMetamorph 11-10-2019 в 08:09:

Цитата:
nemyax писал:
VS 2008 SP1

Старовато, однако.
У меня в приоритете Visual Studio 2017/2019, но вообще я к форку прикручу cmake/waf, и там уже не будет разницы какую IDE использовать.


Отправлено nemyax 11-10-2019 в 08:37:

SNMetamorph
Зато исправлены глупости шохи, чтобы оно хотя бы собиралось.


Отправлено KorteZZ 11-10-2019 в 09:33:

Отличная затея! Если ещё и простой скриптинг оружия и монстров будет, а также куча энтитей, чтобы делать меньше костылей, то будет очень и очень круто!

__________________

Killing Floor: Horzine Outbreak


Отправлено XaeroX 11-10-2019 в 09:57:

Цитата:
SNMetamorph писал:
3. Рефакторинг кода
Если кратко: сделать логичную и удобную структуру каталогов в репозитории и раскидать все исходники по ней.
Ещё первое что приходит в голову - для каждой энтити сделать отдельную пару .h/.cpp файлов.

Рефакторинг кода - это когда модифицируют код, разве нет?
Я не совсем понимаю, зачем тасовать код между файлами, заниматься сортировкой строчек в delta.lst и тому подобными странными вещами.
Если есть силы и свободное время - потратил бы его на изучение теории движкостроения и попрактиковался в написании собственного. Вот это было бы полезно.

__________________

xaerox on Vivino


Отправлено AntiPlayer 11-10-2019 в 10:07:

Цитата:
XaeroX писал:
потратил бы его на изучение теории движкостроения и попрактиковался в написании собственного.

Я думал это один из этапов развития.
Сначала понимаешь, что тебя не устраивает чей то код, пытаешься его рефакторить, потом происходит озарение и понимание того, что проще написать все самому заново.

__________________
I tell you to enjoy life


Отправлено FiEctro 11-10-2019 в 10:49:

За документацию по движку и моду - да, за всё остальное - нет.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 11-10-2019 в 11:14:

Цитата:
AntiPlayer писал:
Сначала понимаешь, что тебя не устраивает чей то код, пытаешься его рефакторить, потом происходит озарение и понимание того, что проще написать все самому заново.

А ещё позже может прийти понимание, что изначальный код был очень хорошим и правильным и "зря я его рефакторил".

__________________

xaerox on Vivino


Отправлено Дядя Миша 11-10-2019 в 11:15:

Цитата:
SNMetamorph писал:
Если кратко: сделать логичную и удобную структуру каталогов в репозитории и раскидать все исходники по ней.
Ещё первое что приходит в голову - для каждой энтити сделать отдельную пару .h/.cpp файлов.

Это никому не нужно. Бесполезная трата времени в условиях, когда хочется сделать ну хоть что-то, а навыков нехватает. Мне например сейчас создание каждого нового h\cpp как серпом по яйцам, только отвлекает и время тратит.

Если всеръез возьмешься, я тебе скину несколько исправлений багов, которые забыл сделать.

Теперь из тово, что можно было бы реализовать:
1. бамп маппинг
2. тени от всенаправленных источников
3. скриптовые пушки
Ну это так, навскидку.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 11-10-2019 в 11:15:

Цитата:
FiEctro писал:
За документацию по движку и моду - да

Кстати да, документация - если она грамотная и правильная - всегда полезна.

__________________

xaerox on Vivino


Отправлено Дядя Миша 11-10-2019 в 11:16:

Цитата:
AntiPlayer писал:
Сначала понимаешь, что тебя не устраивает чей то код

Вот тут и вопрос - не устраивает чем? Если ты его не понимаешь, то это твои проблемы, а не кода. А вот если ты в нём нашёл кучу ошибок - это уже другое дело.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 11-10-2019 в 12:46:

Цитата:
XaeroX писал:
Если есть силы и свободное время - потратил бы его на изучение теории движкостроения и попрактиковался в написании собственного.

Это мне точно ни к чему.


Отправлено a1batross 11-10-2019 в 12:49:

Единственное на что я может быть потратил бы время касательно XashXT -- это последний пункт. И чтобы полностью его достичь, нужно закрыть одну очень крупную задачу в самом Xash3D FWGS -- проигрывание авишек и в самом XashXT PhysX обновить до версии с открытым исходным кодом, потому что она единственная которая заработает на Linux.

А так, мне кажется Дядя Миша уже сделал всё, чтобы XashXT был удобным инструментом, сравнительно с HLSDK, SoHL и подобных проектов.

__________________
Xash3D FWGS форк


Отправлено thambs 11-10-2019 в 12:52:

за кроссплатформенность

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено SNMetamorph 11-10-2019 в 13:02:

Цитата:
Дядя Миша писал:
Это никому не нужно. Бесполезная трата времени в условиях, когда хочется сделать ну хоть что-то, а навыков нехватает.

Вот тут скорее соглашусь. С одной стороны сам лично сталкивался с неудобством, когда из-за редактирования пары строчек в weapons.h у какой-то конкретной пушки, приходилось перекомпиливать кучу зависимых файлов. Но с другой стороны перелопачивать код и делить его на отдельные кусочки, возможно, не оправдывается удобством в дальнейшей разработке. А, хрен его знает.

Добавлено 11-10-2019 в 22:02:

Цитата:
a1batross писал:
PhysX обновить до версии с открытым исходным кодом, потому что она единственная которая заработает на Linux.

А на мобилках он работает, или придётся какую-то затычку городить?


Отправлено Дядя Миша 11-10-2019 в 13:10:

Цитата:
SNMetamorph писал:
когда из-за редактирования пары строчек в weapons.h у какой-то конкретной пушки, приходилось перекомпиливать кучу зависимых файлов

Эта проблема в первую очередь возникает из-за того что игровую часть распилили на условный клиент и условный сервер. Яж говорю это дурь, поэтому в NT будет единая игровая библиотека.

Добавлено 11-10-2019 в 16:10:

Цитата:
a1batross писал:
и в самом XashXT PhysX обновить до версии с открытым исходным кодом

Эти идиоты там поменяли вообще всё
К примеру они выбросили анизотропные материалы. И кажется что-то сделали с кинематиками. Ну я в любом случае больше не хочу с физиксом связываться. Он почему-то адски тормозит на спонзе, я так и не понял почему.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 11-10-2019 в 13:22:

Цитата:
a1batross писал:
А так, мне кажется Дядя Миша уже сделал всё, чтобы XashXT был удобным инструментом, сравнительно с HLSDK, SoHL и подобных проектов.

Мне кажется это надо спрашивать у тех, кто регулярно имеет дело со всем перечисленным. Вот тогда-то точно будет известно.


Отправлено Crystallize 11-10-2019 в 15:59:

А ты мог бы сделать субтитры чтобы МИР перевести?
И опцию для парент-системы "применять паренты но только если это не противоречит коллизии и-или гравитации".


Отправлено XaeroX 11-10-2019 в 16:10:

Цитата:
SNMetamorph писал:
Это мне точно ни к чему.

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

__________________

xaerox on Vivino


Отправлено Дядя Миша 11-10-2019 в 16:21:

Цитата:
Crystallize писал:
И опцию для парент-системы "применять паренты но только если это не противоречит коллизии и-или гравитации".

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

Добавлено 11-10-2019 в 19:21:

А муверы-поезда учитывают коллизию. Если прикреплённую энтить заблокировать, то и родитель не сможет продолжать движение.
Ну вообщем в рамках своих моветипов.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 11-10-2019 в 18:28:

Если что, когда я говорю про коллизию то имею в виду в том числе и скольжение вдоль стенки.

Добавлено 12-10-2019 в 01:28:

Цитата:
Дядя Миша писал:
ну вообще-то паренты не мешают энтитям использовать их физику, если сам родитель не двигается.

"родитель не двигается", ну у ротабли кручение считается за то что она двигается? Или нет? Ротабля же.
Тесткейс был следующий: есть ротабля и к ней на кончик цепляется пушабля или физ. объект. На пути у такого объекта ставим горочку, включаем ротаблю и ждём когда паренченный объект начнёт на неё карабкаться. А он насквозь проходит.


Отправлено Ghoul [BB] 11-10-2019 в 22:52:

Думаю, что не нужно.
Документация была бы кстати, всё остальное - пустое трата твоего времени и наших ожиданий. Хватит нам 3D, XT, NT, FWGS, P2... ничегго не упустил?
Или ты хочешь превзойти совершенство Дяди Миши в написании таких вещей? Скорее, получится, как с Мастером. И код сведёт тебя с ума раньше, чем ты дойдёшь хотя бы до этапа альфа-тестирования.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено SNMetamorph 12-10-2019 в 00:26:

Цитата:
Crystallize писал:
А ты мог бы сделать субтитры чтобы МИР перевести?

Вот кстати, я хотел ImGui прикрутить к форку, а там уже запросто можно будет сделать субтитры и не только.


Отправлено nemyax 12-10-2019 в 04:45:

Цитата:
SNMetamorph писал:
я хотел ImGui прикрутить к форку

Зачем, при живом-то mainui-cpp?

Добавлено 12-10-2019 в 07:45:

Цитата:
Ghoul [BB] писал:
Скорее, получится, как с Мастером

А как с ним получилось?


Отправлено Crystallize 12-10-2019 в 07:16:

Цитата:
nemyax писал:
А как с ним получилось?

Я думаю он про бесконечное переписывание ради переписывания.


Отправлено XaeroX 12-10-2019 в 08:31:

Цитата:
nemyax писал:
А как с ним получилось?

Скрытый текст:
Этот текст скрытый. Вы должны оставить хотя бы одно сообщение в теме, чтобы его увидеть.

__________________

xaerox on Vivino


Отправлено Ghoul [BB] 12-10-2019 в 10:07:

Цитата:
nemyax писал:
А как с ним получилось?

Цитата:
Crystallize писал:
Я думаю он про бесконечное переписывание ради переписывания.


Не только. Ещё и нервный срыв и проблемы со здоровьем из-за такого количества часов за компом.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено thambs 12-10-2019 в 11:16:

Ghoul [BB]
Ну так ведь говорили же ему, и отдыхать завали, на бессонку звали, а он говорит НЕТ, нужно ДЕБАЖИТЬ. И вот результат. Кстати, мне вот тут подумалось, а Мастер, случаем, от тебя 144х атмосфер не нахватался? А то ведь может его с них так замкнуло на ДЕБАГЕ...

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено nemyax 12-10-2019 в 11:16:

Ну это. Жениться надо.


Отправлено SNMetamorph 12-10-2019 в 11:40:

Цитата:
nemyax писал:
Зачем, при живом-то mainui-cpp?

ImGui в разы более функциональный. Кроме этого, в сети тонна примеров его использования, благодаря чему новоприбывшему будет гораздо проще разобраться.


Отправлено thambs 12-10-2019 в 12:29:

SNMetamorph
А там векторные шрифты можно?

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Дядя Миша 12-10-2019 в 13:52:

Цитата:
Ghoul [BB] писал:
Ещё и нервный срыв и проблемы со здоровьем из-за такого количества часов за компом.

Человек может работать за чем угодно годами и ничего, живой и весёлый. У Мастера была болезненная фиксация, он сам не понимал что делал, учиться не хотел и долбился в стенку лбом. И вот результат.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 12-10-2019 в 14:15:

Цитата:
thambs писал:
А там векторные шрифты можно?

Ну я в пару строчек загружал и использовал .ttf шрифты в своем моде на голдсорсе.


Отправлено Ghoul [BB] 12-10-2019 в 21:27:

Цитата:
nemyax писал:
Ну это. Жениться надо.


Пока не найдена та единственная и достойная, увы.

Добавлено 13-10-2019 в 00:27:

Цитата:
thambs писал:
А то ведь может его с них так замкнуло на ДЕБАГЕ...


Судя по стилю высказывания снимающего, он не далеко ушёл от героев своей съёмки...

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено KorteZZ 13-10-2019 в 10:50:

Почему "Нет" перевалило за "Да"? Это сообщество любителей Half-Life или хейтеров этой игры?

__________________

Killing Floor: Horzine Outbreak


Отправлено XaeroX 13-10-2019 в 11:41:

KorteZZ
Это сообщество любителей Half-Life, но конкретно этот форк едва ли нужен. Люди же пишут, почему.

__________________

xaerox on Vivino


Отправлено Crystallize 13-10-2019 в 14:00:

Цитата:
Ghoul [BB] писал:
нервный срыв

Серьёзно? А это как, он наорал на кого-то или ему просто поплохело и т.д.?


Отправлено Ghoul [BB] 13-10-2019 в 20:34:

Цитата:
thambs писал:
А то ведь может его с них так замкнуло


Пссс, тебе-то, поди, завидно. Признайся, хотел бы так же упороться, а?!

Цитата:
Crystallize писал:
Серьёзно? А это как, он наорал на кого-то или ему просто поплохело и т.д.?


Да какая разница, Мастер просил за спиной не обсуждать. Надо будет, сам напишет.. только он уже ничего больше не напишет

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Government-Man 14-10-2019 в 02:17:

Цитата:
KorteZZ писал:
Почему "Нет" перевалило за "Да"?


Потому что я добавил свой решающий голос
Причины тут до меня уже описали другие люди, но дабы показать какой я умный, я все же выскажусь по пунктам:

1. Полезно
2. Не критично - кому надо сами сконвертят проекты из более ранней версии в более новую - все студии позволяют это сделать.
3. Совершенно бесполезно, а потенциально и вовсе вредно. Код должен быть красивым ровно настолько, чтобы не вызывать желание разбить клавиатуру об голову автора, но не более того. Любой рефакторинг должен преследовать определенную цель, а рефакторинг ради абстрактной красивости почти всегда бесполезная трата времени.
4. Не могу ничего сказать потому что не использую Ксаш.
5. Фичи ради фич не сильно полезнее чем рефакторинг ради рефакторинга. Кто будет их использовать? Существует ли проект где они могут понадобиться?
6. Полезно узкому кругу не таких как все.

Итого, полезными я могу назвать два пункта из шести. Не густо.

Добавлено 14-10-2019 в 05:17:

Цитата:
XaeroX писал:
Если есть силы и свободное время - потратил бы его на изучение теории движкостроения и попрактиковался в написании собственного. Вот это было бы полезно.


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


Отправлено Crystallize 14-10-2019 в 06:04:

Если хочется поработать с Ксашем то можешь связаться с автором Zion Warcry и помочь ему перетащить его код с Голда на Ксаш.

Добавлено 14-10-2019 в 12:42:

Вообще грустно когда видишь превью какого-то мода и там как что-то крутое подаётся тот факт что он делается "на стабильной платформе SvenCoop".

Добавлено 14-10-2019 в 13:04:

Ну документация-то однозначно нужна.


Отправлено Дядя Миша 14-10-2019 в 07:11:

Чем вас старая документация не устраивает?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 14-10-2019 в 07:59:

Дядя Миша
А че есть документация по функциям движка и игровых дллок?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено nemyax 14-10-2019 в 09:03:

А у спирита и свена есть?


Отправлено XaeroX 14-10-2019 в 09:07:

Цитата:
Crystallize писал:
и там как что-то крутое подаётся тот факт что он делается "на стабильной платформе SvenCoop".

Чем их не устроила стабильная платформа XDM?

__________________

xaerox on Vivino


Отправлено Дядя Миша 14-10-2019 в 09:16:

Цитата:
FiEctro писал:
А че есть документация по функциям движка и игровых дллок?

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 14-10-2019 в 09:18:

Цитата:
nemyax писал:
А у спирита и свена есть?


А спирит и свен это движки? И свенкооповцы выложили свои сорцы в открытый доступ?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено nemyax 14-10-2019 в 09:26:

FiEctro
Тема про форк мода-девкита. Который аналог не движка, а именно что спирита. Нинада передёргивать.


Отправлено Дядя Миша 14-10-2019 в 10:49:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 14-10-2019 в 10:59:

Цитата:
Ghoul [BB] писал:
Да какая разница, Мастер просил за спиной не обсуждать. Надо будет, сам напишет.. только он уже ничего больше не напишет


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

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено FreeSlave 14-10-2019 в 10:59:

nemyax, какая тебе нужна документация по свену? Есть документация по ангелскриптовому API

__________________
I'm on github
I'm on opendesktop.org


Отправлено XaeroX 14-10-2019 в 12:12:

Ничего себе! В свене прикрутили ангелскрипт?? Ну теперь можно писать на С++ не только в С++ коде, но и в скриптах. Истинные хардкорщики оценят.

__________________

xaerox on Vivino


Отправлено FreeSlave 14-10-2019 в 12:56:

XaeroX, да вроде ещё с 4-ой версии.

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

Или тебе не нравится именно то, что прикрутили АнгелСкрипт, а не какой-нибудь Луа?

__________________
I'm on github
I'm on opendesktop.org


Отправлено XaeroX 14-10-2019 в 13:05:

Цитата:
FreeSlave писал:
да вроде ещё с 4-ой версии.

Вот оно что. Просто помню, что лет 10 назад Мастер очень сокрушался, что в Волатиле Lua, а не AngelScript. Видимо, он свенкоопом и вдохновлялся.
Цитата:
FreeSlave писал:
Они и прикрутили, чтоб дать возможность добавлять что-то своё без доступа к библиотекам.

Что им помешало открыть сорцы игровых библиотек? Это ж не движок, который они открывать не могут из-за требований Valve.
Цитата:
FreeSlave писал:
Или тебе не нравится именно то, что прикрутили АнгелСкрипт, а не какой-нибудь Луа?

Я не понимаю, зачем прикручивать С++ к С++. С Луа в волатиле всё понятно - простенький язык для скриптования миссий, который смогут освоить левел-дизайнеры без особого понимания программирования. Хотя сейчас я бы уже, наверное, выбрал Питон.

__________________

xaerox on Vivino


Отправлено nemyax 14-10-2019 в 13:08:

Цитата:
XaeroX писал:
сейчас я бы уже, наверное, выбрал Питон

Отэта поворот. Ты ж брезговал петоном.


Отправлено FreeSlave 14-10-2019 в 13:11:

XaeroX, в данном случае в использовании C++-подобного языка для скриптов есть плюсы. Если есть какой-то мод с открытыми исходниками, и кто-то хочет сделать из него маппак для свена, то можно по сути скопировать C++ реализацию, подправить некоторые моменты для ангелскрипта и всё готово. В свене скрипты используются именно для создания новых энтить, так что сходство с HLSDK скорее плюс, чем минус.
AMX плагины тоже не зря на С++-подобном языке писались, как мне кажется.

__________________
I'm on github
I'm on opendesktop.org


Отправлено thambs 14-10-2019 в 13:14:

Цитата:
Видимо, он свенкоопом и вдохновлялся.

Та не так — у него просто фетиш на точки с запятыми и фигурные скобки.

Цитата:
Питон

Неимоверные душевные страдания, причиняемые отступами и отсутствие точек с запятой в конце каждой строки же. Кровь кишки, ну ты поел.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено XaeroX 14-10-2019 в 13:21:

Цитата:
nemyax писал:
Отэта поворот. Ты ж брезговал петоном.

Брезговать-то брезгую, но вынужден в последние годы много на нём писать.
FreeSlave
Просто С++ это очень сложный язык с непростым синтаксисом и множеством подвохов. Даже программисту со стажем ничего не стоит написать вот такой перл:
C++ Source Code:
int i = 2 + foo()?1:0;

А потом полдня ДЕБАЖИТЬ, пытаясь понять, с какого перепугу у него i равен 1.

Добавлено 14-10-2019 в 20:21:

Цитата:
thambs писал:
у него просто фетиш на точки с запятыми и фигурные скобки.

И Луа, и питон не против, если ты будешь ставить точки с запятыми.
Вот с фигурными скобками уже сложнее, да.
Цитата:
thambs писал:
душевные страдания, причиняемые отступами

Я раньше так же рассуждал, а потом понял, что там несколько иная философия. Хороший код на питоне похож на литературный текст. Тебе же не причиняет душевные страдания красная строка?
Ну и ещё необходимость ДЕБАЖИТЬ чужой плюсовый код с десятком вложенных блоков с фигурными скобками иногда отрезвляет. В питоне такое написать сложнее из-за необходимости соблюдать индентацию, и программист охотнее переделает реализацию на более читабельную.

__________________

xaerox on Vivino


Отправлено nemyax 14-10-2019 в 13:31:

Цитата:
XaeroX писал:
Даже программисту со стажем ничего не стоит написать вот такой перл

Разве со стажем не приходит привычка везде втыкать скобки на всякий пожарный?


Отправлено XaeroX 14-10-2019 в 13:33:

nemyax
Сначала приходит, а потом обратно уходит. Обилие скобок ухудшает читабельность. Да и старшие коллеги могут засмеять - "ты чо лох что ли, приоритет операторов не помнишь? понабрали по объявлениям..."

__________________

xaerox on Vivino


Отправлено Crystallize 14-10-2019 в 13:38:

Цитата:
Дядя Миша писал:
Чем вас старая документация не устраивает?

Она не обновлялась где-то с 2013 года.
К тому же некоторые энтити которые 1 в 1 перенесены из Спирита и работают так же как в Спирите, описаны в Ксаше совершенно запутанным языком, при том что в Спирите их описание было простым и понятным. Пример: trigger_onsight. Я на КСМ указывал небольшой список таких косяков по чьей-то просьбе.

Добавлено 14-10-2019 в 20:38:

Цитата:
Дядя Миша писал:
ни разу не помню, чтобы кто-то подобное спрашивал.

Я спрашивал на КСМ, мне Макарон тоже переспрашивал зачем мне это надо. Это надо чтобы приблизительно знать как устроен код и куда там лезть в зависимости от цели.


Отправлено Дядя Миша 14-10-2019 в 16:30:

Цитата:
XaeroX писал:
Даже программисту со стажем ничего не стоит написать вот такой перл:

АТО можно подумать на чистом Си так написать нельзя?

Цитата:
XaeroX писал:
понабрали по объявлениям..."

ну а как еще набирать надо? Через диван?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 14-10-2019 в 17:05:

Цитата:
Дядя Миша писал:
можно подумать на чистом Си так написать нельзя?

В контексте нашего обсуждения что си, что плюсы - один фиг.
Цитата:
Дядя Миша писал:
ну а как еще набирать надо?

Через LinkedIn.

__________________

xaerox on Vivino


Отправлено Ghoul [BB] 14-10-2019 в 17:45:

Цитата:
Crystallize писал:
Вообще грустно когда видишь превью какого-то мода и там как что-то крутое подаётся тот факт что он делается "на стабильной платформе SvenCoop".


А разве платформа SvenCoop не стабильна? Насколько мне известно, они таки выпросили официальныые исходники у Вальвы и в известной степени их допилили.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Crystallize 14-10-2019 в 17:52:

Ghoul [BB] да оно всё неужасно но есть же Ксаш который не вчера возник и даже рендер там быстрее.


Отправлено Ghoul [BB] 14-10-2019 в 22:30:

Цитата:
Crystallize писал:
Ghoul [BB] да оно всё неужасно но есть же Ксаш который не вчера возник и даже рендер там быстрее.


Есть. Только Cвин Куп - мод мультиплеерный, а у Ксаша с этим боольшие проблемы. Несмотря на быстрый рендер (да и то, как я понимаю, быстрота которого сильно преукрашена заинтересованными лицами)

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено SNMetamorph 15-10-2019 в 02:40:

Цитата:
Ghoul [BB] писал:
Только Cвин Куп - мод мультиплеерный, а у Ксаша с этим боольшие проблемы

Да вроде нет там особых проблем. В прошлом году в апреле ведь тестили мультиплеер, все работало. К тому же в FWGS форке уже давно всё в порядке с мультиплеером.


Отправлено Crystallize 15-10-2019 в 04:17:

Цитата:
Ghoul [BB] писал:
Несмотря на быстрый рендер (да и то, как я понимаю, быстрота которого сильно преукрашена заинтересованными лицами)

Ну как, там в два раза прирост.


Отправлено Дядя Миша 15-10-2019 в 07:23:

Цитата:
Ghoul [BB] писал:
а у Ксаша с этим боольшие проблемы

очередное бездоказательное утверждение. Какие проблемы с этим у ксаша, потрудись перечислить.

Цитата:
Ghoul [BB] писал:
да и то, как я понимаю, быстрота которого сильно преукрашена заинтересованными лицами

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 15-10-2019 в 07:35:

Цитата:
Дядя Миша писал:
очередное бездоказательное утверждение. Какие проблемы с этим у ксаша, потрудись перечислить.

Да ладно тебе. Мы до сих пор ждём объяснения 140 атмосфер... Ничего, подождём, у нас впереди целая вечность.

__________________

xaerox on Vivino


Отправлено a1batross 15-10-2019 в 09:15:

XaeroX в аналогичной конструкции будет не менее неочевидно: 2 + 1 if foo() else 0. Если foo() вернет True, то ответ будет 3.

А что. Если не уверен, ставь скобки. %)

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

__________________
Xash3D FWGS форк


Отправлено XaeroX 15-10-2019 в 10:16:

Цитата:
a1batross писал:
Отчего собственно на тот же свен пишут моды кому не лень.

Вероятно, эти люди уже имели опыт с HLSDK, а значит, что-то понимают в плюсах. Но их будет всё меньше с годами.
Понимаете, это ненормально, когда какой-то вшивый скрипт требует от меня ставить точку с запятой в конце каждой строки. Такое можно простить мощному статически типизированному высокопроизводительному языку, где можно делать хоть навороченные шаблоны, хоть ассемблерные вставки. Но скриптинг должен быть лёгким и приятным, в идеале - вообще на человеческом, а не машинном языке.
Цитата:
a1batross писал:
в аналогичной конструкции будет не менее неочевидно

Значительно менее неочевидно. Тут сразу читается по-русски: "2+1 если foo() вернёт нам что-нибудь хорошее, и 0, если плохое".

__________________

xaerox on Vivino


Отправлено Дядя Миша 15-10-2019 в 12:25:

Цитата:
XaeroX писал:
какой-то вшивый скрипт требует от меня ставить точку с запятой в конце каждой строки

точка с запятой это пустой оператор!

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ghoul [BB] 15-10-2019 в 18:01:

Цитата:
Дядя Миша писал:
очередное бездоказательное утверждение. Какие проблемы с этим у ксаша, потрудись перечислить.


Всё уже было написано в своё время.

http://hlfx.ru/forum/showthread.php...0061#post180061

Возможно, на новом железе и прирост, а на старом... всё гораздо хуже, чем в голдсорсе...

Добавлено 15-10-2019 в 21:01:

Цитата:
XaeroX писал:
Чем их не устроила стабильная платформа XDM?


На это тебе уже ответили, что Родина им дала, а они по прежнему говно хотят жрать. Что уж тут поделаешь?! Ну, пусть жрут.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Дядя Миша 15-10-2019 в 18:13:

Цитата:
Ghoul [BB] писал:
Всё уже было написано в своё время.

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ghoul [BB] 15-10-2019 в 21:16:

Цитата:
Дядя Миша писал:
И в доказательство привёл в пример Параною, на которой у тебя лайтмапы не прогрузились.


Вообще-то речь шла о "быстром рендере". Да, действительно, в какое-то версии была довольно шустрая обработка wpoly, я еще нахваливал скорость. но в последующей версии это всё скатилось в говно. как помню из общения с тобой в телеграмме, это из-за проверки на туман стало так... Было такое?

А параноя лишь пример того....

Добавлено 16-10-2019 в 00:16:

Вот, чтобы не быть голо-словным:

0.99-Build 3887

http://alxgk.ru/uploader/img/876c62c9940e450e4a299cd3f664f118.jpg

http://alxgk.ru/uploader/img/6187a625c45e27ecb4591e487f346c50.jpg

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Дядя Миша 15-10-2019 в 21:31:

Цитата:
Ghoul [BB] писал:
Вообще-то речь шла о "быстром рендере".

Ксаш-мод на твоей карточке должен норм работать, кстати.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ghoul [BB] 15-10-2019 в 21:36:

Цитата:
Дядя Миша писал:
Ксаш-мод на твоей карточке должен норм работать, кстати.


Нет, ты постой. Я второй имадж загрузил.
Это и будет проверкой на ваш "быстрый" рендер.
Как бы сказал Thambs - "цифры, цифры давай!"

Вот, чтобы не быть голо-словным:

0.99-Build 3887, 72 ФПС. СТАБИЛЬНО.

http://alxgk.ru/uploader/img/876c62c9940e450e4a299cd3f664f118.jpg

0.99 stable-Build 4344, 31 ФПС. С просадками. От 4.3 (КАРЛ, 4.3!!!) до 47 (когда посто бегать или бошкой вертеть - просадки.

http://alxgk.ru/uploader/img/6187a625c45e27ecb4591e487f346c50.jpg

НУ А ЭТО Голдсорс, на этой же карте, 60 ФПС. Конечно, когда начнётся жара, он тоже будет плясать.... но... сейчас-то всё спокойно.
http://alxgk.ru/uploader/img/c3fd8c53f327f34e66f964e407cf8e1b.jpg

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено ***FantoM*** 15-10-2019 в 22:33:

Ghoul [BB] Подозреваю,что просадки по ФПС происходит из-за сглаживания.Попробуй его отключить.


Отправлено XaeroX 16-10-2019 в 05:13:

Цитата:
Ghoul [BB] писал:
0.99 stable-Build 4344, 31 ФПС. С просадками.

Ага, точно, тут сглаживание включено, а на остальных скринах его нет.
Дядя Миша недавно тоже жалился, что в Вольфраме 20 фпс на примитивной карте. Оказалось - дело в MSAA, выключили и всё забегало. При этом фпс сглаживание роняет очень по-разному на разных карточках.

__________________

xaerox on Vivino


Отправлено Дядя Миша 16-10-2019 в 07:32:

Ghoul [BB] во первых, как тебе уже сказали - там включено сглаживание. Во вторых ты проверяешь Xash3D, а я тебе говорил про мод XashXT.

Добавлено 16-10-2019 в 10:29:

Чтобы выключить сглаживание надо открыть opengl.cfg найти строчку
gl_wgl_msaa_samples "4"
и поставить там 0.

Добавлено 16-10-2019 в 10:32:

Нет, ну вообще конечно удивительно. У человека настолько древняя карточка, что на ней MSAA еле ворочается, а он там еще чота гонит.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 16-10-2019 в 08:27:

Цитата:
Ghoul [BB] писал:
Всё уже было написано в своё время.

http://hlfx.ru/forum/showthread.php...0061#post180061

Возможно, на новом железе и прирост, а на старом... всё гораздо хуже, чем в голдсорсе...

На этом форуме уже 15 лет говорят о том что на Радеонах всё глючит а на Нвидии нет. Ты как первый день здесь, ей богу.

Добавлено 16-10-2019 в 15:27:

Дядя Миша А GL-extensions там рядом есть смысл дополнительно отключать?


Отправлено nemyax 16-10-2019 в 08:29:

Счёт да–нет сравнялся.


Отправлено SNMetamorph 16-10-2019 в 12:59:

Цитата:
nemyax писал:
Счёт да–нет сравнялся.

Да этот опрос особо смысла не имеет, что-то я поздно до этого додумался.
Он имел бы смысл, если голосовали только те люди, которые либо планируют сделать, либо уже делают мод. Всё это в первую очередь для них затевалось ведь.


Отправлено Ghoul [BB] 16-10-2019 в 13:12:

Цитата:
Дядя Миша писал:
Чтобы выключить сглаживание надо открыть opengl.cfg найти строчку
gl_wgl_msaa_samples "4"
и поставить там 0.


В конфиге такой строчки нету.
Через консоль пишет, что gl_wgl_msaa_samples is read only. И ничего не меняет.

[pix=320] http://alxgk.ru/uploader/img/8e765d...a945a4d5228.jpg [pix]

Да и все эти рассуждения насчёт сглаживания -полная фигня. Я в этих разных версиях НИЧЕГО не менял, кроме dll-ок

Добавлено 16-10-2019 в 16:11:

Цитата:
Дядя Миша писал:
Нет, ну вообще конечно удивительно. У человека настолько древняя карточка, что на ней MSAA еле ворочается, а он там еще чота гонит.


Но ведь в более старой версии-то действительно всё летает. Что ты тут на мою карточку гонишь? Донаты тебе приходят или мне? На что мне новую купить-то?

Добавлено 16-10-2019 в 16:12:

Цитата:
Crystallize писал:
На этом форуме уже 15 лет говорят о том что на Радеонах всё глючит а на Нвидии нет. Ты как первый день здесь, ей богу.


Здесь не радеон, а NVidia как раз.Я с ноута тестил. Про радеон даже не заикаюсь.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено XaeroX 16-10-2019 в 13:14:

SNMetamorph
Мод предстоит делать именно тебе. А мы будем смотреть и кретекавать.

Добавлено 16-10-2019 в 20:14:

Цитата:
Ghoul [BB] писал:
Да и все эти рассуждения насчёт сглаживания -полная фигня

Это не рассуждения, это видно на скриншотах. Ты сам присмотрись внимательнее.

__________________

xaerox on Vivino


Отправлено Ghoul [BB] 16-10-2019 в 13:14:

Цитата:
nemyax писал:
Счёт да–нет сравнялся.


Да вопросов нет. Пусть делает. Только человеко-часы зря растраченные на проект "в стол" жалко. Так бы, может, ещё одна личность занялась спасением души, а не бесполезным форканьем.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено XaeroX 16-10-2019 в 13:15:

Цитата:
Ghoul [BB] писал:
Так бы, может, ещё одна личность занялась спасением души

А кто-нибудь на твоей памяти занялся, из форумчан? Мастер, может быть? Или он всё ещё делает XDM, просто теперь на другом форуме?

__________________

xaerox on Vivino


Отправлено Дядя Миша 16-10-2019 в 14:16:

Цитата:
Ghoul [BB] писал:
В конфиге такой строчки нету.

Цитата:
Дядя Миша писал:
надо открыть opengl.cfg найти строчку

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

Цитата:
Crystallize писал:
А GL-extensions там рядом есть смысл дополнительно отключать?

ну тада все кастомные рендеры протухнут.

Цитата:
Ghoul [BB] писал:
Но ведь в более старой версии-то действительно всё летает.

ну ведь там и не было сглаживания.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено thambs 16-10-2019 в 14:41:

Цитата:
Дядя Миша писал:
ну ведь там и не было сглаживания.

Хм, а ведь действительно. Помнится я специально в настроках видимокарты его выставлял. А теперь значит можно и в игруле. Мб имеет смысл эту настройку в меню вынести?

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Дядя Миша 16-10-2019 в 15:15:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 16-10-2019 в 15:49:

Цитата:
Дядя Миша писал:
Ну да, я понимаю, ты вообще не читаешь что я пишу, ты уверен что и так уже всё сам знаешь.

В последнее время я начинаю понимать, что в Москве просто принято всё всегда знать. А тот, кто не с ними - тот труп. Они отвечают за свой базар, могут забиться на зуб!

__________________

xaerox on Vivino


Отправлено Дядя Миша 16-10-2019 в 16:00:

XaeroX эта его самоуверенность уже сыграла с ним злую шудгу, если помнишь. Когда он совершенно левому челу начал кидать странные предъявы и в итоге от него же и отгрёб.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 16-10-2019 в 18:07:

Цитата:
Ghoul [BB] писал:
В конфиге такой строчки нету.

Если нет-впиши. Я уже вписал.
Поправьте человеку тэг а?

Цитата:
Ghoul [BB] писал:
Здесь не радеон, а NVidia как раз.Я с ноута тестил. Про радеон даже не заикаюсь.

Я думаю у тебя ещё нет склероза и ты помнишь что в посте по ссылке ты как раз жаловался на глюки Паранои 2 под Радеоном.


Отправлено Ghoul [BB] 16-10-2019 в 19:52:

Цитата:
XaeroX писал:
А кто-нибудь на твоей памяти занялся, из форумчан?


Например, я лично скоро и всецело планирую этим заняться. Заодно и остальным подам пример.
Что касается Мастера, то он действительно делает успехи. И, надеюсь, уже скоро бросит этот его бесполезный ХДМ.

Добавлено 16-10-2019 в 22:44:

Цитата:
Дядя Миша писал:
не по глазам? Ну да, я понимаю, ты вообще не читаешь что я пишу, ты уверен что и так уже всё сам знаешь.


Что ты несёшь? Если я пишу в конфиге, это не значит, что я настолько омудел, чтобы искать её в config.cfg. Разве opengl.cfg не является конфигом?

Добавлено 16-10-2019 в 22:45:

Цитата:
Дядя Миша писал:
ну ведь там и не было сглаживания.


ДА Я НЕ ВИЖУ НИКАКОГО СГЛАЖИВАНИЯ. КУДЫ СМОТРЕТЬ-ТО?????

Добавлено 16-10-2019 в 22:47:

Цитата:
Дядя Миша писал:
вы как-то совершенно упускаете из виду, что я старыми ксашами не занимаюсь боле, у меня их даже на компе нету. Ничего я там уже не буду выносить или обновлять. Уже сколько раз сказал и опять тоже самое.


И вот, тебе, бабушка 43 год!
Никакой пользователе-ориентированности. Старым продуктам поддержки нет, а новые продукты запускать невозможно от слова совсем.

Добавлено 16-10-2019 в 22:48:

Цитата:
XaeroX писал:
Они отвечают за свой базар, могут забиться на зуб!


Хочешь забиться? Раз на раз?

Добавлено 16-10-2019 в 22:52:

Цитата:
Crystallize писал:
Я думаю у тебя ещё нет склероза и ты помнишь что в посте по ссылке ты как раз жаловался на глюки Паранои 2 под Радеоном.


На нвидии она ещё хуже работала, если ты прочтёшь там несколькими постами дальше....

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Дядя Миша 16-10-2019 в 20:00:

Цитата:
Ghoul [BB] писал:
ДА Я НЕ ВИЖУ НИКАКОГО СГЛАЖИВАНИЯ. КУДЫ СМОТРЕТЬ-ТО?????

как сказал бы твой духовный наставник - задумайся, почему ты в упор не видишь то, что абсолютно для всех это обычное дело. Попробуй для началу попереключать gl_msaa 0/1, это производительности конечно не добавит, но ты хотя бы поймешь что такое сглаживание и как оно выглядит.
а потом можно и строчку в конфиге поискать. Которую ты в упор не можешь найти почему-то.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 17-10-2019 в 02:58:

Цитата:
Ghoul [BB] писал:
ДА Я НЕ ВИЖУ НИКАКОГО СГЛАЖИВАНИЯ. КУДЫ СМОТРЕТЬ-ТО?????

На края объектов, сглаживание же краевое. Например на руки: на одних скриншотах там лесенка, а на других она немного закруглена.

Добавлено 17-10-2019 в 09:58:

Цитата:
Ghoul [BB] писал:
На нвидии она ещё хуже работала, если ты прочтёшь там несколькими постами дальше....

https://hlfx.ru/forum/showthread.ph...0421#post180421
GeForce 7400, ну там ДМ какой-то фаллбэк отладил вскоре после этого, но ты из темы исчез.


Отправлено Дядя Миша 17-10-2019 в 06:07:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 17-10-2019 в 08:25:

Дядя Миша нет, просто кроме Ксерокса и Кутузова никто не может представить проведённый тобой за годы объём работ, соответственно представляют его как какую-то магию которая ничего не стоила тебе. Отсюда лютая ненависть на каждый найденный баг, никто не думает что это смешные остатки каких-то огромных проблем решённых тобой, вместо этого думают что ты поленился сделать элементарные вещи. Люди не привыкли думать по принципу "всё относительно".

Добавлено 17-10-2019 в 15:20:

Вообще он сказал что у него и так стоят последние дрова.

Добавлено 17-10-2019 в 15:25:

Может быть вот эти поставятся?
https://www.catalog.update.microsof...GeForce+Go+7400


Отправлено Дядя Миша 17-10-2019 в 08:32:

Если в дравах нет VAO, значит они не последние.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 17-10-2019 в 08:48:

Что это?


Отправлено Дядя Миша 17-10-2019 в 10:25:

https://www.khronos.org/registry/Op...rray_object.txt

Цитата:
Approved by the ARB on July 11, 2008

Если драва старше, там этого нет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 17-10-2019 в 14:28:

Они не могут быть старше, даже те дрова что у Гуля сейчас-они за начало 2009, и на них у него был вылет.


Отправлено Дядя Миша 17-10-2019 в 16:08:

ну так ввели расширение в 2008-м, не факт что в драва это добавили в начале 2009-го. Скорее это надо драва искать за десятый год.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ghoul [BB] 20-10-2019 в 00:31:

Цитата:
Crystallize писал:
Дядя Миша нет, просто кроме Ксерокса и Кутузова никто не может представить проведённый тобой за годы объём работ, соответственно представляют его как какую-то магию которая ничего не стоила тебе. Отсюда лютая ненависть на каждый найденный баг, никто не думает что это смешные остатки каких-то огромных проблем решённых тобой, вместо этого думают что ты поленился сделать элементарные вещи. Люди не привыкли думать по принципу "всё относительно".


Да не, пацаны, без обид.
Просто Дядя Миша заявлял Ксаш как не только совместимую с Голдсорс движок, но ещё и декларировал всевозможные расширенные возможности, в том числе и рост производительности. Понятное дело, что народ повёлся, ожидал, что всё будет пофигенно и безразрывно и на любой самой сложной карте 300 FPS, даже на dm_tropic... А тут такое дело, что на голде даже лутшие результаты получаются при тестах. Как тут промолчать-то?

Добавлено 20-10-2019 в 03:31:

Цитата:
Crystallize писал:
Может быть вот эти поставятся?


Нет.
Эти пишут, что не найдено совместимого оборудования. Увы.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено XaeroX 20-10-2019 в 06:48:

Цитата:
Ghoul [BB] писал:
А тут такое дело, что на голде даже лутшие результаты получаются при тестах. Как тут промолчать-то?

Твоя проблема - в обобщениях. Я не пользователь и не фанат ксаша, но не могу не признать, что он пофигенно и безразрывно работает у подавляющего большинства людей, включая меня. В твоём случае самым грамотным решением было бы либо приобрести более современное железо, либо профинансировать поддержку устаревшего, либо продолжать использовать Голд, но без критики, потому что лично тебе никто ничего не обещал.
И да, я заранее предупреждаю - я не гарантирую, что у тебя будут работать мои движки и игры. Я вообще ничего не гарантирую персонально, но стремлюсь максимально увеличить охват аудитории. 100% при этом едва ли достижимы.

__________________

xaerox on Vivino


Отправлено Дядя Миша 20-10-2019 в 08:43:

Драва искать не хотим, MSAA отключать не хотим, хотим на каждом углу орать как нас обманули.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 20-10-2019 в 09:48:

Цитата:
Ghoul [BB] писал:
Эти пишут, что не найдено совместимого оборудования. Увы.

Чудеса.
Я бы предложил DRP.su но я боюсь что ты позволишь ему поставить тебе кучу мусора.
Какая модель ноута и какая винда?


Отправлено Ghoul [BB] 20-10-2019 в 12:08:

Цитата:
Дядя Миша писал:
Драва искать не хотим, MSAA отключать не хотим, хотим на каждом углу орать как нас обманули.


ДРОВА СТОЯТ САМОЙ ПОСЛЕДНЕЙ ВЕРСИИ, СОВМЕСТИМОЙ С winXp.

MSAA - не отключаемо по определению у меня. Ни из конфига, ни из консоли.
Как его отключить, если он READ-ONLY??


Цитата:
Crystallize писал:
Чудеса.
Я бы предложил DRP.su но я боюсь что ты позволишь ему поставить тебе кучу мусора.
Какая модель ноута и какая винда?


SAMSUNG R 65
http://pix.academ.info/img/2019/10/20/b0350f313df6eb6463a0b157b6d40189.jpg

Добавлено 20-10-2019 в 15:08:

Цитата:
Crystallize писал:
DRP.su


Его в своё время пользовал, да. Годная утилита. Но , как я и сказал, установке двров на ЭТОМ ноуте в своё время было уделено достаточно времени. Всё, что смогло встать из более нового, было поставлено.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Crystallize 20-10-2019 в 13:24:

Цитата:
Ghoul [BB] писал:
MSAA - не отключаемо по определению у меня. Ни из конфига, ни из консоли.
Как его отключить, если он READ-ONLY??

Ты вписал ту строчку в opengl.cfg?

Добавлено 20-10-2019 в 20:24:

Цитата:
Ghoul [BB] писал:
Его в своё время пользовал, да. Годная утилита.

Ты её наверное не узнаешь теперь.


Отправлено thambs 20-10-2019 в 14:17:

Цитата:
Crystallize писал:
Ты вписал ту строчку в opengl.cfg?

Каждый раз как Гуль впишет её, проклятые агенты НАСЫ зайдут через бэкдор в ШiNDOWSе и запишут её обратно! Почему? BECAUSE REASONS! На что только не пойдут что бы скрыть что Луна плоская и сделана из сыра.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено XaeroX 20-10-2019 в 14:24:

Ну пусть Мастера попросит помочь. У Мастера наверняка никто через бэкдоры не пройдёт. Он же столько лет и сил потратил на борьбу с ними.

__________________

xaerox on Vivino


Отправлено thambs 20-10-2019 в 14:41:

Дядя Миша
Вот, кстати, на itelовской заглушке сейчас проверил — действительно, отключаешь msaa и 33fps на большой карте превращаются в 60 (на xt-рендере).

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Дядя Миша 20-10-2019 в 15:31:

Цитата:
thambs писал:
Вот, кстати, на itelовской заглушке сейчас проверил — действительно, отключаешь msaa и 33fps на большой карте превращаются в 60

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено thambs 20-10-2019 в 16:17:

Дядя Миша
Ну так тут-же не всемирный заговор проклятой НАСЫ, не чудеса, знамения и вездесущие агенты, тут цифры где-то вбивать надо. К сожалению, дальше будет хуже. Я в своё время уже предупреждал, что после лунофобии последует плоская земля, а дальше только полный коллапс личности. Вот первые симптомы мы уже наблюдаем.

Вспомни, как я его подталкивал самому разобраться сколько на самом деле металлическая оболочка выдерживает на разрыв. Ведь и формулы ему нашёл, и таблицы пределов прочности — и что в результате?

Цитата:
Ладно, друзья, давайте пока оставим эти несчастные 144 атмосферы и зайдём чутка с другого бока

И плевать что жидко обосрался — отложим в сторону, забудем, выкинем из головы, самостоп сработал. Вот у нас тут теперь скафандры нетакие. Начнёшь там объяснять, тратить время, — то же ведь проигнорирует и ещё на что-то перескочит. Так вот криптоконспирология влияет на мышление. Теперь вот оно, видимо, распространяется и на твои проекты — злые ДЯДЕМИШИ продались НАСЕ нагло врут про ксаши BECAUSE REASONS.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Crystallize 20-10-2019 в 16:35:

thambs Тебя конечно интреесно почитать но по-хорошему это называется флейм.

Добавлено 20-10-2019 в 23:35:

Цитата:
thambs писал:
144 атмосферы

В какую тему писать посты на подобные темы? Альт. юмор? Да вроде и нет.


Отправлено thambs 20-10-2019 в 16:43:

Crystallize
Да не флейм, так лирическое отступление. Ладно, закончим его.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Ghoul [BB] 20-10-2019 в 21:32:

Цитата:
Дядя Миша писал:
Теперь осталось разобраться, почему ты эту строчку находишь за секунду, а Гуль уже неделю найти не может.


вот конфиг, он расположен в папке valve, gl_wgl_msaa_samples тут нет, как видно.

http://pix.academ.info/img/2019/10/21/62700e356f4b0c6a06c80cfbe7e19325.jpg

Дописал. В игре всё равно он равен gl_wgl_msaa_samples "4", хоть убейся.

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено Дядя Миша 20-10-2019 в 21:37:

Всё это очень подозрительно...

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 21-10-2019 в 05:08:

Цитата:
Ghoul [BB] писал:
вот конфиг, он расположен в папке valve, gl_wgl_msaa_samples тут нет, как видно.

Погоди, почему папка valve? Повышение фпс заявлялось про кастомный рендер XashXT, это отдельный мод со своей папкой.


Отправлено Дядя Миша 21-10-2019 в 07:25:

Crystallize нет, фпс везде вырастет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 21-10-2019 в 08:06:

Цитата:
Crystallize писал:
Я бы предложил DRP.su

Как неплохая альтернатива есть Snappy Driver Installer. Это не реклама.


Отправлено thambs 21-10-2019 в 08:16:

Цитата:
Дядя Миша писал:
Всё это очень подозрительно...

В порядке первой пришедшей на ум гипотезы: возможно после обновы вальву не запускали, а тестировали сразу мод и там уже свой opengl.cfg c 4й.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Дядя Миша 21-10-2019 в 09:40:

Цитата:
SNMetamorph писал:
Как неплохая альтернатива есть Snappy Driver Installer. Это не реклама.

ну кстати да, мы DRP давно уже дропнули, SDI лучше.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ghoul [BB] 21-10-2019 в 10:18:

Цитата:
Crystallize писал:
Погоди, почему папка valve? Повышение фпс заявлялось про кастомный рендер XashXT, это отдельный мод со своей папкой.


Я тут могу допустить лишь одно предположение: Xash создаёт свои файлы там.
Ведь ясно же написано в этом конфиге, что он от ксаша. И я его туда не копировал: скачал Ксаш, закинул в него папку вальве, и папку своего мода. запустил. всё по инструкции.

Добавлено 21-10-2019 в 13:15:

Цитата:
thambs писал:
И плевать что жидко обосрался — отложим в сторону, забудем, выкинем из головы, самостоп сработал. Вот у нас тут теперь скафандры нетакие. Начнёшь там объяснять, тратить время, — то же ведь проигнорирует и ещё на что-то перескочит. Так вот криптоконспирология влияет на мышление. Теперь вот оно, видимо, распространяется и на твои проекты — злые ДЯДЕМИШИ продались НАСЕ нагло врут про ксаши BECAUSE REASONS.


Эххх, как же тебя корёжит-то, а ?!
Будто не американцы на луну не полетели, а ты сам всё это срежиссировал, а тебя вывели на чистую воду. Ну то есть прямо таки принял на личный счёт.

Добавлено 21-10-2019 в 13:18:

Цитата:
XaeroX писал:
Ну пусть Мастера попросит помочь. У Мастера наверняка никто через бэкдоры не пройдёт. Он же столько лет и сил потратил на борьбу с ними.

А чего Мастер?
Мастер тестил анадысь свой новый XDM под этим Ксашем.
Сплошное крошево.
На голде всё пофигенно и безразрывно, под Ксашем - крошево. Не везде, но на многих картах прямо сразу (даже не запускаются (dm_tropic, напрмер)

__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.

Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo


Отправлено XaeroX 21-10-2019 в 11:20:

Цитата:
Ghoul [BB] писал:
На голде всё пофигенно и безразрывно, под Ксашем - крошево.

Ну дык, на то он и Мастер, пусть разбирается и исправляет. Либо XDM, либо Ксаш - он опенсорсный, Мастеру ничего не мешает его ДЕБАЖИТЬ.

__________________

xaerox on Vivino


Отправлено Дядя Миша 21-10-2019 в 14:03:

Цитата:
Ghoul [BB] писал:
На голде всё пофигенно и безразрывно

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 21-10-2019 в 14:22:

Цитата:
Дядя Миша писал:
Мастера ждут увлекательные месяцы и даже годы дебага.

Сопровождаемые проклятиями в адрес движка, его разработчиков и говна, которое в него утекло.

__________________

xaerox on Vivino


Отправлено Дядя Миша 21-10-2019 в 14:46:

Ну что тут сделаешь? Человек уверен что всё делает правильно. То он что он свой код дебажит месяцами его не смущает абсолютно. Не наталкивает ни на какие идеи. Во всём виновата халфа, она кривая. Будет писать под WinAPI - винда кривая. Будет писать под DOS - камплуктор неправильный.
И так далее.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено KorteZZ 06-11-2019 в 08:58:

Цитата:
Government-Man писал:
Потому что я добавил свой решающий голос
Причины тут до меня уже описали другие люди, но дабы показать какой я умный, я все же выскажусь по пунктам:

1. Полезно
2. Не критично - кому надо сами сконвертят проекты из более ранней версии в более новую - все студии позволяют это сделать.
3. Совершенно бесполезно, а потенциально и вовсе вредно. Код должен быть красивым ровно настолько, чтобы не вызывать желание разбить клавиатуру об голову автора, но не более того. Любой рефакторинг должен преследовать определенную цель, а рефакторинг ради абстрактной красивости почти всегда бесполезная трата времени.
4. Не могу ничего сказать потому что не использую Ксаш.
5. Фичи ради фич не сильно полезнее чем рефакторинг ради рефакторинга. Кто будет их использовать? Существует ли проект где они могут понадобиться?
6. Полезно узкому кругу не таких как все.

Итого, полезными я могу назвать два пункта из шести. Не густо.

Добавлено 14-10-2019 в 05:17:



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


Чем вредно?
Вообще, считаю, что присутствие в Сети ещё одного варианта, допиленного и улучшенного всяко лучше, чем если бы его не было. Не хочешь - не используй. Тем более, что Дядя Миша уже завершил работу над ними. А новый автор, возможно, будет более сговорчивым и отнесется с пониманием к проблемам мододелов, ибо он и сам является мододелом, в то время как ДМ - просто крутым прогером. Соответственно, Метаморф ближе к "простому народу". Смею надеяться, что у него получится что-то ближе к упрощенному конструктору =)

__________________

Killing Floor: Horzine Outbreak


Отправлено Дядя Миша 06-11-2019 в 09:56:

Цитата:
KorteZZ писал:
возможно, будет более сговорчивым и отнесется с пониманием к проблемам мододелов

А то я ж к вашим проблемам относился совсем без понимания?
Я то ведь и сам по молодости кубал нимножко.

Добавлено 06-11-2019 в 12:56:

Вообще говоря, это такое дело. Тут голосов ровно поровну. Ну значит последнее слово за автором, только ему решать делать или нет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 06-11-2019 в 10:56:

Там за каждый вариант больше голосов чем людей которые в принципе что-то делают под XT.


Отправлено SNMetamorph 06-11-2019 в 13:08:

Цитата:
Дядя Миша писал:
Ну значит последнее слово за автором, только ему решать делать или нет.

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

P.S: забыл упомянуть что будет поддержка мультиплеера, это как раз то, чем я в первую очередь займусь.


Отправлено Дядя Миша 06-11-2019 в 13:25:

SNMetamorph ты бы мог например доделать то, до чего у меня не дошли руки.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 06-11-2019 в 13:49:

Цитата:
Дядя Миша писал:
ты бы мог например доделать то, до чего у меня не дошли руки.

А что это именно? Я планировал пофиксить лаги из-за wpoly, но там проблема комплексная, насколько я понял из обсуждения в топике по XashNT.


Отправлено Дядя Миша 06-11-2019 в 14:14:

основные тормоза даёт проверка энтить на видимость по хеадноде, когда кол-во касаемых лифов превышает 48 штук. Если дерево достаточно большое, то суммарно эта проверка на видимость тормознее чем вся отрисовка мира. Можно на свой страх и риск выключить эту проверку по хеадноде в движке совсем. Но тогда может возникнуть ситуация как в кваке - некоторые энтити потенциально могут исчезать прямо под носом у игрока.

Добавлено 06-11-2019 в 17:14:

Сделать там что-то еще не нарушая бинарной совместимости вряд ли возможно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 06-11-2019 в 14:22:

Цитата:
Дядя Миша писал:
основные тормоза даёт проверка энтить на видимость по хеадноде


Эта проверка видимости в коде движка или внутри кода рендерера в моде?

Цитата:
Дядя Миша писал:
Сделать там что-то еще не нарушая бинарной совместимости вряд ли возможно.

То есть "оптимизировать" дерево не получится?


Отправлено nemyax 06-11-2019 в 14:30:

SNMetamorph
Есть ещё проблема с куллингом моделек, подвергшихся трансформации. Как-то не так вычисляется ААВВ у них. Дядя Миша признаёт клиентский баг, но у меня не получилось отловить.


Отправлено SNMetamorph 23-12-2019 в 13:37:

Re: PrimeXT - логическое продолжение XashXT

Цитата:
SNMetamorph писал:
Поскольку Дядя Миша завершил работу над Xash-движком и XashXT, мной было принято решение создать форк XashXT, в котором я хочу воплотить в жизнь следующие планы:

Написал сюда только те аспекты, которые вспомнил. Возможно что-то упустил.

1. Актуальная документация, на русском и английском языках
2. Поддержка современных компиляторов и IDE
Иначе говоря: упростить всю возню до уровня "скачал код, открыл IDE, и начал клепать очередную Зону 51"
3. Рефакторинг кода
Если кратко: сделать логичную и удобную структуру каталогов в репозитории и раскидать все исходники по ней.
Ещё первое что приходит в голову - для каждой энтити сделать отдельную пару .h/.cpp файлов.
4. Окончательно пофиксить все проблемы, связанные с лагами от wpoly (на видеокартах AMD в частности)
5. Прикрутить графические плюшки и систему материалов с удобным интерфейсом
Насколько я знаю, что-то такое уже реализовано в P2. Коли так, то буду от неё отталкиваться.
6. Кроссплатформенность
Предполагается что форк будет использоваться со свежей версией FWGS-форка движка. Так что можно сказать, что по этому аспекту не будет особых трудностей.

Суть этой всей задумки проста: предоставить моддерам простой и удобный SDK для разработки игр под движок Xash3D.
Сам лично я планирую разрабатывать форк и параллельно внедрять наработки к себе в мод. В итоге получается двойная польза.

Этим постом я просто решил сообщить о своих намерениях. Возможно, это повлияет на чьи-то планы касательно разработки мода.
Пока еще в этом направлении ничего не готово - работу планирую начать летом 2020 года, поскольку освобожусь от учёбы я только к тому времени.
В свою очередь я хочу, чтобы здешний народ дал мне знать, есть ли спрос на подобные вещи. К посту прикреплю опрос, будьте добры проголосовать.


Кое что ещё вспомнил, думаю стоит об этом поведать.
7. Поддержка мультиплеера
То есть придётся таки запилить наконец предиктинг клиентских пушек.
И это я буду делать в любом случае, т.к. нуждаюсь в этом.
8. Поддержка OpenAL Soft
Но есть ли смысл? В моём моде оно мне точно пригодится, но вот в других...


Отправлено FiEctro 23-12-2019 в 13:42:

>> Поддержка OpenAL Soft

Вроде как была раньше, но потом её выпилили за ненадобностью. Только лишние библиотеки таскать.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено ncuxonaT 23-12-2019 в 13:44:

FiEctro а в ней был hrtf


Отправлено SNMetamorph 24-12-2019 в 13:00:

Цитата:
FiEctro писал:
Вроде как была раньше

Врят ли это был именно OpenAL Soft, может быть ты путаешь с EAX/A3D?
Просто во втором случае понятно почему никакой нужды не было, эти фичи же должны поддерживаться аудиоинтерфейсом на аппаратном уровне. Ну а такие звуковые карты были, наверное, только у полтора человека.


Отправлено Flash 16-01-2020 в 20:34:

Честно говоря хотелось бы увидеть допиленный ксаш, реализовать фишки из свена. Слишком много приходится подпирать костылями.
ЗЫ. DRP скурвился, SDI наш выбор.

__________________
Tiger! Tiger! burning bright
In the forests of the night,
What immortal hand or eye
Could frame thy fearful symmetry?


Отправлено Ku2zoff 16-01-2020 в 21:15:

Цитата:
Flash писал:
Честно говоря хотелось бы увидеть допиленный ксаш, реализовать фишки из свена.

Серверные плагины и апасных свеновских монстров. Остальное не особо надо. Ну разве что рендерер п2 открыть, чтоб сами моддеры в ксашемоде его заюзали. Короче, надо чтоб без студии могли новые пушки и прочие энтити делать, да и вообще кастомизировать.
13 лет читаю форумы, и 13 лет вижу одно и то же нытьё: то копипастить не умеют, то студию поставить не могут. Зато карты делают пачками. У меня строго наоборот, я даже кодить немного научился. Есть конечно авторы, которые не ноют, а делают новые кодерские фишки, хоть и небольшие, в свои моды (см. Hopelessness 1 и 2). Но большинство продолжают юзать спириты и свен именно потому, что там сорцы не нужно пересобирать, чтобы что-то добавить, что маппинг не позволяет.

Добавлено 17-01-2020 в 04:15:

Цитата:
Flash писал:
ЗЫ. DRP скурвился, SDI наш выбор.

Учитывая, сколько раз он предлагает установить ВСЕ популярные браузеры и антивирусы + собственного агента в систему, он не скурвился, а его авторам башляют за рекламу.


Отправлено Дядя Миша 16-01-2020 в 22:15:

Цитата:
Ku2zoff писал:
Ну разве что рендерер п2 открыть, чтоб сами моддеры в ксашемоде его заюзали

Вы ксаш-модовский сначала освойте, ага. Сглаживание по лестницам они найти не могут. Вон бета паранои с открытыми исходниками, и толку?
Никто не задал ни единого вопроса.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Flash 16-01-2020 в 22:16:

Лично мне лень ещё кодинг изучать. Уж лучше маппинг с костылями, тем более без уровней мод-то и не сделать, в отличии от остального.
Как пример из недавнего, лично мне не хватает нескольких фич из свена:
"Place squadmaker on the map. You can use monstermaker instead, but it's lacks some features"
https://sites.google.com/site/svenm...rials/cutscenes
Я спавню солдатов через мейкер, но они спавнят оружие при смерти, что для меня лишнее на этапе интро карты.
Или вот камеры, лично меня достало что у них нет возможности задать скорость поворота, нет возможности фильтр прикрепить, всё через костыли.
Вот этого всего не хватает, подобных мелочей просто куча.

__________________
Tiger! Tiger! burning bright
In the forests of the night,
What immortal hand or eye
Could frame thy fearful symmetry?


Отправлено nemyax 16-01-2020 в 22:32:

Цитата:
Flash писал:
Лично мне лень ещё кодинг изучать.

Как бы ты ни кодил, а придётся не один месяц потратить, чтобы разобраться в хлсдк и кодобазе ксаша и ксашмода.


Отправлено SNMetamorph 17-01-2020 в 07:39:

Цитата:
nemyax писал:
Как бы ты ни кодил, а придётся не один месяц потратить, чтобы разобраться в хлсдк и кодобазе ксаша и ксашмода.

А это да, учитывая что никакой документации на данный момент нет.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Crystallize 17-01-2020 в 07:46:

Цитата:
SNMetamorph писал:
А это да, учитывая что никакой документации на данный момент нет.

Когда я на КСМ сказал что нужны руководства по кодингу на Ксаш, на меня посмотрели большими наивными глазами и спросили "зачем?".


Отправлено nemyax 17-01-2020 в 07:53:

Crystallize
Да понятно зачем, но непонятно, кто будет ту документацию делать.


Отправлено Crystallize 17-01-2020 в 09:41:

nemyax я правильно понимаю что в ней 90% объёма было бы про предиктинг пушек и что-нибудь студиомодельное вроде 9-way blending?


Отправлено nemyax 17-01-2020 в 09:44:

Crystallize
Не знаю. Её ведь никто не спланировал.


Отправлено Дядя Миша 17-01-2020 в 09:56:

Код сам по себе это и есть документация. Что к третьей кваке есть доки? Или может быть к третьему дууму? К сталкеру?
А они на порядок сложнее ксаш-мода. И тем не менее народ прекрасно себе во всём разбирается, форкает, исправляет ошибки и так далее. И только нашы ноют - документация им видитили нужна. Какого рода вам нужна документация, спрашивается? Начните работу с переименования папки sound в папку audio?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 17-01-2020 в 10:14:

Цитата:
Дядя Миша писал:
И тем не менее народ прекрасно себе во всём разбирается, форкает, исправляет ошибки и так далее.

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

Цитата:
Дядя Миша писал:
Какого рода вам нужна документация, спрашивается?

По архитектуре, инфа типа той что свои вызовы функций OpenGL лучше всего подсовывать в tri.cpp, а не куда-то ещё.


Отправлено Дядя Миша 17-01-2020 в 10:52:

Цитата:
Crystallize писал:
Вы же с Ксером по жизни ржоте над тупыми буржуями которые всё что не сделают тормозит, вылетает, портит память и требует отдельно указывать оригин вместо его автоматического вычисления.

Кто ничего не делает, тот и не ошибается.

Цитата:
Crystallize писал:
По архитектуре, инфа типа той что свои вызовы функций OpenGL лучше всего подсовывать в tri.cpp, а не куда-то ещё.

какая забористая бредятина

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ku2zoff 17-01-2020 в 10:56:

Цитата:
Crystallize писал:
По архитектуре, инфа типа той что свои вызовы функций OpenGL лучше всего подсовывать в tri.cpp, а не куда-то ещё.

При открытых сорцах ксашдвижка такая документация не имеет смысла. Берёшь, да ищешь по коду, откуда что движком вызывается. Гораздо полезнее маленькие примеры, типа "вот если сюда вписать такой-то код, можно накодить то-то и то-то, вот вам демонстрация".


Отправлено SNMetamorph 17-01-2020 в 10:58:

Цитата:
Ku2zoff писал:
Гораздо полезнее маленькие примеры, типа "вот если сюда вписать такой-то код, можно накодить то-то и то-то, вот вам демонстрация".

Ага. А такое лучше всего сделать комментариями в коде, а в документации по коду просто сделать некий FAQ.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 17-01-2020 в 11:01:

Не, мужыки, справочник по API по-любому нужен.


Отправлено Дядя Миша 17-01-2020 в 12:15:

Вот в NT выведу вам виртуалку, там я подробно распишу что и куда.
Потому что сорцы закрытые же.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено nemyax 17-01-2020 в 13:40:

Цитата:
Дядя Миша писал:
подробно распишу что и куда


А когда выведешь виртуалку?


Отправлено Дядя Миша 17-01-2020 в 13:59:

nemyax как говорится - следите за новостями. Я почти каждый день что-то пишу.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Flash 17-01-2020 в 14:01:

Цитата:
Дядя Миша писал:
Я почти каждый день что-то пишу.

На форуме?)

__________________
Tiger! Tiger! burning bright
In the forests of the night,
What immortal hand or eye
Could frame thy fearful symmetry?


Отправлено Дядя Миша 17-01-2020 в 17:19:

Ну втеме про разработку NT. Но оно добавляется к уже написанному и тема не всплывает в новых.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 02-02-2021 в 20:43:

Спустя столь продолжительный период времени, я таки начал работать. И уже даже есть некоторые результаты. За основу я брал ксашмод из репозитория FWGS, который в свою очередь основан на XashXT 0.81 rev 2.
И вот что на данный момент удалось сделать:
1. Пофиксил проблемы с компиляцией на самом свежем на данный момент MSVC (Visual Studio 2019)
2. Пофиксил рендеринг декалей на брашах, в форке он работал по какой-то загадочной причине только на эмуляторе.
3. Пофиксил вылет игры при проигрывании ивентов у модели, когда для энтити выставлялся неправильный sequence анимации.
Движок я решил взять тоже из репы FWGS, так как он тоже основан на последней версии ванильного ксаша, и там сделал несколько доработок:
пофиксил выбор видеорежимов, пофиксил отрисовку net_graph.
Далее, думаю, буду ковырять код рендеринга мира и разбираться как он вообще устроен, еще постараюсь из графической части по возможности максимально избавиться от legacy-кода, чтобы можно было нормально использовать графический профайлер. Ну, как-то так.

Добавлено 03-02-2021 в 00:40:

Если кому-то интересно, за прогрессом можно следить по ссылкам
По движку: https://github.com/SNMetamorph/xash.../commits/master
По PrimeXT: на данный момент https://github.com/SNMetamorph/xash3d-fwgs но потом всё будет перенесено в https://github.com/SNMetamorph/PrimeXT (сюда уже можно и нужно репортить баги ксашмода)

Добавлено 03-02-2021 в 00:43:

Ещё из интересного: я обнаружил что в ксашмоде немало кода, связанного с машинками. Кажется, что есть почти все что нужно, но нет самой энтити-машины непосредственно которую уже можно поставить на карту и пользоваться ей. Ну тут может быть Дядя Миша что-нибудь подскажет

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 03-02-2021 в 07:22:

Пусть это останется для вас маленькой загадкой

Добавлено 03-02-2021 в 10:22:

Цитата:
SNMetamorph писал:
Кажется, что есть почти все что нужно, но нет самой энтити-машины

там целой папки нехватает, а в ней несколько файлов.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Aynekko 03-02-2021 в 08:25:

Цитата:
Дядя Миша писал:
Пусть это останется для вас маленькой загадкой

Где хоть на эти машинки в действии посмотреть можно? Поиск ничего не дал.

__________________
Мой мод на Xash


Отправлено Дядя Миша 03-02-2021 в 08:31:

Нигде, разумеется.

Добавлено 03-02-2021 в 11:31:

Вы вот сорцы от HLFX 0.6 видели? Нет. А они есть.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено KorteZZ 03-02-2021 в 11:51:

Почему решил взять за основу форк? И что там нового от дядьмишиного?
А так, классно, что взялся за дополнение. Буду следить за разработкой =)

__________________

Killing Floor: Horzine Outbreak


Отправлено SNMetamorph 03-02-2021 в 14:50:

Цитата:
KorteZZ писал:
Почему решил взять за основу форк?

Там уже какие-то фиксы были поверх последней версии, ну и он уже был под кроссплатформу расчитан.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 06-02-2021 в 22:19:

В общем, поковырялся в коде рендерера мира, заодно погонял ксашмод в графическом профайлере. Маппер сделал мне две карты для теста батчинга: на первой куча полностью одинаковых цилиндров, на втором каждый ряд цилиндров имеет свою текстуру, итого там получается 8 текстур на весь мир.
В профайлере выяснилось, что мир рисуется реально слишком маленькими кусочками. И я не могу понять, по какой причине эта цепочка батчинга разрывается.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-02-2021 в 06:39:

Цитата:
SNMetamorph писал:
на первой куча полностью одинаковых цилиндров, на втором каждый ряд цилиндров имеет свою текстуру

Каждый цилиндр - энтить или часть мира?

И что значит - слишком маленькие кусочки? Маленькие это сколько?
r_speeds 6 покажет сколько там дипов и переключений шейдеров. И сколько треугольников рисуется.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-02-2021 в 09:49:

Цитата:
Дядя Миша писал:
Каждый цилиндр - энтить или часть мира?

Часть мира, там абсолютно всё брашевое.

Цитата:
Дядя Миша писал:
слишком маленькие кусочки? Маленькие это сколько?

Вообще там варьируется, но в итоге получается что-то от 3 до 15 сурфейсов навскидку.

Добавлено 07-02-2021 в 13:16:

Вообще, рендерер мира в FWGS форке с этими недосферами и цилиндрами справляется за 1 drawcall, но только после того как я сделал атласу для лайтмап размер 4096x4096

Добавлено 07-02-2021 в 13:49:

Сейчас добавил на экран дополнительную статистику по сбросам буфера. И выяснил кое-что интересное.

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

Вызовов, конечно, все еще много для такой сцены. Опять таки, судя по картинке проблема в том что, наверное, нет атласа для лайтмап.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-02-2021 в 10:00:

Цитата:
SNMetamorph писал:
но только после того как я сделал атласу для лайтмап размер 4096x4096

Ну есть же феатура специальная.
C++ Source Code:
1
unsigned int EngineSetFeatures( void )
2
{
3
  unsigned int flags = (ENGINE_WRITE_LARGE_COORD|ENGINE_TRANSFORM_TRACE_AABB|ENGINE_COMPUTE_STUDIO_LERP);
4
 
5
  flags |= ENGINE_LARGE_LIGHTMAPS|ENGINE_LOAD_DELUXEDATA;
6
  flags |= ENGINE_COMPENSATE_QUAKE_BUG;
7
 
8
  return flags;
9
}

Она и так включена по умолчанию. Какое разрешение у этих лайтмап?
Естественно, дип прервётся, если надо менять лайтмапу.
Цитата:
SNMetamorph писал:
Вообще, это похоже на то, будто сурфейсы никак не отсортированы

Всё там отсортировано. Причём наиболее оптимальным способом - сортировкой во время загрузки. Каждый кадр ничего не сортируется и время на сортировку не тратится.

Добавлено 07-02-2021 в 13:00:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-02-2021 в 10:07:

Цитата:
Дядя Миша писал:
Какое разрешение у этих лайтмап?

512x512
Цитата:
Дядя Миша писал:
Всё там отсортировано.

Странно, но когда начинают рендерится цилиндры возле пола, то отрисовка самих цилиндров сразу же чередуется с отрисовкой сурфейсов пола, как мигалка. Что-то там точно не так.
Цитата:
Дядя Миша писал:
Ты можешь конечно немного поменять условия самой сортировки, но не советую, они там по идее самые оптимальные.

Стоит все же поковырять и сравнить результаты, я думаю. Где это находится?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-02-2021 в 11:29:

Цитата:
SNMetamorph писал:
Где это находится?


Как ты собрался улучшать, если даже найти не в состоянии?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-02-2021 в 15:15:

Цитата:
Дядя Миша писал:
Как ты собрался улучшать, если даже найти не в состоянии?

А я пока даже и не искал

Добавлено 07-02-2021 в 18:08:

В общем, поковырялся, решил проверить сортировку, вышло примерно так:

В целом довольно неплохо, но рендерится почему-то все равно не так как в этом списке
Пока что у меня нет догадок, в чем может быть дело.

Добавлено 07-02-2021 в 19:15:

Всё, разобрался в чем была причина! Во первых, в функции R_DrawWorld был такого рода код:
C++ Source Code:
1
//	if( CVAR_TO_BOOL( r_test ))
2
//R_DrawWorldList();
3
//	else
4
R_DrawBrushList();

R_DrawBrushList просто рисует список сурфейсов, ранее собранных в функции R_RecursiveWorldNode, никакой сортировки там нет. А вот R_DrawWorldList уже отрисовывает тот самый список сурфейсов, который был отсортирован еще при загрузке карты. Изначально в коде работала функция R_DrawBrushList, я закомментил её и подставил другую. После этого решил проверить, и вызовов на отрисовку стало около 3000, причем ВСЕ сбросы буфера были из-за переключения шейдеров, это явно был какой-то баг. Я начал дебажить, обнаружил что у сурфейсов с периодичностью в 10-15 чередуются номера шейдеров 14 и 19, я посмотрел что там за шейдеры вообще, выяснил что 19-й шейдер от 14-го отличает только директива BMODEL_FOG_EXP. Решил закомментить её временно и о чудо, весь мир начал прорисовываться в 6 (!!!) вызовов.
Вообще, за добавлением директивы BMODEL_FOG_EXP стоит такой код:
C++ Source Code:
if( tr.fogEnabled )
  GL_AddShaderDirective( options, "BMODEL_FOG_EXP" );

Пока неясно почему tr.fogEnabled чередуется через каждые 10-15 сурфейсов. Буду выяснять дальше.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-02-2021 в 15:25:

Какой-то дурачок прописал в FGD туман по дефолту. Давно-давно.
Я пошутил насчёт локального тумана с волшебными числами 192 168 1 1
и его прописали. Его не видно, но он есть.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-02-2021 в 17:50:

Цитата:
Дядя Миша писал:
Его не видно, но он есть.

Тогда по идее tr.fogEnabled всегда должна быть true? Или как? Почему она чередуется?

Добавлено 07-02-2021 в 19:45:

Разобрался что к чему. В функции R_CheckFog была неправильная проверка на то, находится ли игрок в воде.
C++ Source Code:
// eyes above water
if (tr.viewparams.waterlevel < 3)

Пофиксил так:
C++ Source Code:
// eyes above water
if (tr.viewparams.waterlevel  > 2)

Теперь всё, вроде, отлично. Осталось только проверить рендеринг в ситуации, когда игрок находится под водой.


Добавлено 07-02-2021 в 19:50:

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

Добавлено 07-02-2021 в 20:43:

Понял в чем проблема. В Mod_PrecacheShaders используется проверка на tr.fogEnabled, и поэтому перед вызовом этой функции нужно выставить этот флаг. Для этого я решил использовать R_CheckFog из r_main.cpp, но проблема в том, что там оно проверяет наличие тумана через movevarrs, но к тому моменту когда происходит вызов функции, movevars игрока еще вообще никак ничем не заполнены, соответственно R_CheckFog будет всегда выставлять флаг о том, что тумана нет, вне зависимости от реального положения дел. И теперь я не знаю, как на моменте загрузки уровня сделать эту проверку, либо может можно каким-то образом даже без этого обойтись. Есть у кого нибудь идеи?

Добавлено 07-02-2021 в 21:11:

А вот на карте qstyle сортировка как-то не очень сработала:
C++ Source Code:
1
[2021:02:07|21:06:31] Mod_ResortFaces: faces count 2717, resorted:
2
[2021:02:07|21:06:31]     surfaces 0..7: shader 0, texture 143, lightmap 2
3
[2021:02:07|21:06:31]     surfaces 8..9: shader 0, texture 144, lightmap 2
4
[2021:02:07|21:06:32]     surfaces 10..33: shader 0, texture 161, lightmap 2
5
[2021:02:07|21:06:32]     surfaces 34..45: shader 0, texture 171, lightmap 2
6
[2021:02:07|21:06:32]     surfaces 46..53: shader 0, texture 175, lightmap 2
7
[2021:02:07|21:06:32]     surfaces 54..87: shader 0, texture 178, lightmap 2
8
[2021:02:07|21:06:32]     surfaces 88..104: shader 0, texture 180, lightmap 2
9
[2021:02:07|21:06:32]     surfaces 105..128: shader 0, texture 186, lightmap 2
10
[2021:02:07|21:06:32]     surfaces 129..153: shader 0, texture 188, lightmap 2
11
[2021:02:07|21:06:32]     surfaces 154..153: shader 0, texture 191, lightmap 2
12
[2021:02:07|21:06:32]     surfaces 155..153: shader 0, texture 200, lightmap 2
13
[2021:02:07|21:06:32]     surfaces 156..153: shader 0, texture 205, lightmap 2
14
[2021:02:07|21:06:32]     surfaces 157..160: shader 0, texture 208, lightmap 2
15
[2021:02:07|21:06:32]     surfaces 161..194: shader 0, texture 217, lightmap 2
16
[2021:02:07|21:06:32]     surfaces 195..202: shader 0, texture 219, lightmap 2
17
[2021:02:07|21:06:32]     surfaces 203..205: shader 0, texture 221, lightmap 2
18
[2021:02:07|21:06:32]     surfaces 206..210: shader 0, texture 222, lightmap 2
19
[2021:02:07|21:06:32]     surfaces 211..260: shader 0, texture 223, lightmap 0
20
[2021:02:07|21:06:32]     surfaces 261..264: shader 0, texture 224, lightmap 2
21
[2021:02:07|21:06:32]     surfaces 265..268: shader 14, texture 154, lightmap 1
22
[2021:02:07|21:06:32]     surfaces 269..268: shader 14, texture 155, lightmap 2
23
[2021:02:07|21:06:32]     surfaces 270..293: shader 14, texture 157, lightmap 1
24
[2021:02:07|21:06:32]     surfaces 294..293: shader 14, texture 158, lightmap 1
25
[2021:02:07|21:06:32]     surfaces 295..310: shader 14, texture 159, lightmap 1
26
[2021:02:07|21:06:32]     surfaces 311..312: shader 14, texture 160, lightmap 2
27
[2021:02:07|21:06:32]     surfaces 313..332: shader 14, texture 161, lightmap 0
28
[2021:02:07|21:06:32]     surfaces 333..486: shader 14, texture 161, lightmap 1
29
[2021:02:07|21:06:32]     surfaces 487..569: shader 14, texture 161, lightmap 2
30
[2021:02:07|21:06:32]     surfaces 570..614: shader 14, texture 162, lightmap 1
31
[2021:02:07|21:06:32]     surfaces 615..638: shader 14, texture 162, lightmap 2
32
[2021:02:07|21:06:32]     surfaces 639..683: shader 14, texture 163, lightmap 0
33
[2021:02:07|21:06:32]     surfaces 684..683: shader 14, texture 164, lightmap 1
34
[2021:02:07|21:06:32]     surfaces 685..686: shader 14, texture 165, lightmap 1
35
[2021:02:07|21:06:32]     surfaces 687..686: shader 14, texture 166, lightmap 1
36
[2021:02:07|21:06:32]     surfaces 688..686: shader 14, texture 167, lightmap 1
37
[2021:02:07|21:06:32]     surfaces 689..700: shader 14, texture 170, lightmap 0
38
[2021:02:07|21:06:32]     surfaces 701..751: shader 14, texture 171, lightmap 0
39
[2021:02:07|21:06:32]     surfaces 752..755: shader 14, texture 172, lightmap 1
40
[2021:02:07|21:06:32]     surfaces 756..761: shader 14, texture 174, lightmap 1
41
[2021:02:07|21:06:32]     surfaces 762..765: shader 14, texture 175, lightmap 1
42
[2021:02:07|21:06:32]     surfaces 766..769: shader 14, texture 175, lightmap 2
43
[2021:02:07|21:06:32]     surfaces 770..781: shader 14, texture 176, lightmap 1
44
[2021:02:07|21:06:32]     surfaces 782..830: shader 14, texture 177, lightmap 0
45
[2021:02:07|21:06:32]     surfaces 831..847: shader 14, texture 177, lightmap 1
46
[2021:02:07|21:06:32]     surfaces 848..915: shader 14, texture 177, lightmap 2
47
[2021:02:07|21:06:32]     surfaces 916..923: shader 14, texture 179, lightmap 0
48
[2021:02:07|21:06:32]     surfaces 924..968: shader 14, texture 179, lightmap 1
49
[2021:02:07|21:06:32]     surfaces 969..994: shader 14, texture 179, lightmap 2
50
[2021:02:07|21:06:32]     surfaces 995..998: shader 14, texture 180, lightmap 0
51
[2021:02:07|21:06:32]     surfaces 999..1089: shader 14, texture 180, lightmap 1
52
[2021:02:07|21:06:32]     surfaces 1090..1112: shader 14, texture 180, lightmap 2
53
[2021:02:07|21:06:32]     surfaces 1113..1130: shader 14, texture 181, lightmap 1
54
[2021:02:07|21:06:32]     surfaces 1131..1137: shader 14, texture 181, lightmap 2
55
[2021:02:07|21:06:32]     surfaces 1138..1139: shader 14, texture 182, lightmap 1
56
[2021:02:07|21:06:32]     surfaces 1140..1152: shader 14, texture 183, lightmap 1
57
[2021:02:07|21:06:32]     surfaces 1153..1159: shader 14, texture 183, lightmap 2
58
[2021:02:07|21:06:32]     surfaces 1160..1204: shader 14, texture 184, lightmap 1
59
[2021:02:07|21:06:32]     surfaces 1205..1214: shader 14, texture 184, lightmap 2
60
[2021:02:07|21:06:32]     surfaces 1215..1225: shader 14, texture 185, lightmap 1
61
[2021:02:07|21:06:32]     surfaces 1226..1249: shader 14, texture 185, lightmap 2
62
[2021:02:07|21:06:32]     surfaces 1250..1270: shader 14, texture 186, lightmap 1
63
[2021:02:07|21:06:32]     surfaces 1271..1270: shader 14, texture 186, lightmap 2
64
[2021:02:07|21:06:32]     surfaces 1272..1340: shader 14, texture 187, lightmap 1
65
[2021:02:07|21:06:32]     surfaces 1341..1390: shader 14, texture 187, lightmap 2
66
[2021:02:07|21:06:32]     surfaces 1391..1443: shader 14, texture 188, lightmap 1
67
[2021:02:07|21:06:32]     surfaces 1444..1459: shader 14, texture 189, lightmap 1
68
[2021:02:07|21:06:32]     surfaces 1460..1459: shader 14, texture 189, lightmap 2
69
[2021:02:07|21:06:32]     surfaces 1461..1505: shader 14, texture 190, lightmap 1
70
[2021:02:07|21:06:32]     surfaces 1506..1510: shader 14, texture 190, lightmap 2
71
[2021:02:07|21:06:32]     surfaces 1511..1510: shader 14, texture 191, lightmap 1
72
[2021:02:07|21:06:32]     surfaces 1512..1513: shader 14, texture 192, lightmap 1
73
[2021:02:07|21:06:32]     surfaces 1514..1515: shader 14, texture 193, lightmap 1
74
[2021:02:07|21:06:32]     surfaces 1516..1555: shader 14, texture 194, lightmap 1
75
[2021:02:07|21:06:32]     surfaces 1556..1608: shader 14, texture 195, lightmap 1
76
[2021:02:07|21:06:32]     surfaces 1609..1673: shader 14, texture 195, lightmap 2
77
[2021:02:07|21:06:32]     surfaces 1674..1687: shader 14, texture 196, lightmap 1
78
[2021:02:07|21:06:32]     surfaces 1688..1689: shader 14, texture 197, lightmap 1
79
[2021:02:07|21:06:32]     surfaces 1690..1693: shader 14, texture 198, lightmap 2
80
[2021:02:07|21:06:32]     surfaces 1694..1715: shader 14, texture 199, lightmap 1
81
[2021:02:07|21:06:32]     surfaces 1716..1727: shader 14, texture 200, lightmap 1
82
[2021:02:07|21:06:32]     surfaces 1728..1727: shader 14, texture 200, lightmap 2
83
[2021:02:07|21:06:32]     surfaces 1729..1733: shader 14, texture 201, lightmap 1
84
[2021:02:07|21:06:32]     surfaces 1734..1733: shader 14, texture 201, lightmap 2
85
[2021:02:07|21:06:32]     surfaces 1735..1745: shader 14, texture 202, lightmap 1
86
[2021:02:07|21:06:32]     surfaces 1746..1755: shader 14, texture 203, lightmap 0
87
[2021:02:07|21:06:32]     surfaces 1756..1763: shader 14, texture 203, lightmap 1
88
[2021:02:07|21:06:32]     surfaces 1764..1767: shader 14, texture 204, lightmap 1
89
[2021:02:07|21:06:32]     surfaces 1768..1769: shader 14, texture 205, lightmap 0
90
[2021:02:07|21:06:32]     surfaces 1770..1773: shader 14, texture 205, lightmap 1
91
[2021:02:07|21:06:32]     surfaces 1774..1806: shader 14, texture 206, lightmap 1
92
[2021:02:07|21:06:32]     surfaces 1807..1811: shader 14, texture 207, lightmap 1
93
[2021:02:07|21:06:32]     surfaces 1812..1827: shader 14, texture 208, lightmap 0
94
[2021:02:07|21:06:32]     surfaces 1828..1829: shader 14, texture 208, lightmap 1
95
[2021:02:07|21:06:32]     surfaces 1830..1883: shader 14, texture 209, lightmap 0
96
[2021:02:07|21:06:32]     surfaces 1884..1896: shader 14, texture 209, lightmap 1
97
[2021:02:07|21:06:32]     surfaces 1897..1907: shader 14, texture 210, lightmap 0
98
[2021:02:07|21:06:32]     surfaces 1908..1973: shader 14, texture 210, lightmap 1
99
[2021:02:07|21:06:32]     surfaces 1974..1983: shader 14, texture 210, lightmap 2
100
[2021:02:07|21:06:32]     surfaces 1984..2180: shader 14, texture 211, lightmap 1
101
[2021:02:07|21:06:32]     surfaces 2181..2182: shader 14, texture 212, lightmap 1
102
[2021:02:07|21:06:32]     surfaces 2183..2182: shader 14, texture 213, lightmap 1
103
[2021:02:07|21:06:32]     surfaces 2184..2188: shader 14, texture 213, lightmap 2
104
[2021:02:07|21:06:32]     surfaces 2189..2196: shader 14, texture 214, lightmap 2
105
[2021:02:07|21:06:32]     surfaces 2197..2212: shader 14, texture 215, lightmap 1
106
[2021:02:07|21:06:32]     surfaces 2213..2224: shader 14, texture 215, lightmap 2
107
[2021:02:07|21:06:32]     surfaces 2225..2228: shader 14, texture 216, lightmap 2
108
[2021:02:07|21:06:32]     surfaces 2229..2231: shader 14, texture 217, lightmap 2
109
[2021:02:07|21:06:32]     surfaces 2232..2264: shader 14, texture 218, lightmap 1
110
[2021:02:07|21:06:32]     surfaces 2265..2266: shader 14, texture 219, lightmap 1
111
[2021:02:07|21:06:32]     surfaces 2267..2338: shader 14, texture 220, lightmap 1
112
[2021:02:07|21:06:32]     surfaces 2339..2388: shader 14, texture 220, lightmap 2
113
[2021:02:07|21:06:32]     surfaces 2389..2388: shader 15, texture 156, lightmap 0
114
[2021:02:07|21:06:32]     surfaces 2390..2388: shader 15, texture 158, lightmap 1
115
[2021:02:07|21:06:32]     surfaces 2391..2388: shader 15, texture 159, lightmap 1
116
[2021:02:07|21:06:32]     surfaces 2392..2405: shader 15, texture 161, lightmap 0
117
[2021:02:07|21:06:32]     surfaces 2406..2419: shader 15, texture 161, lightmap 1
118
[2021:02:07|21:06:32]     surfaces 2420..2427: shader 15, texture 162, lightmap 0
119
[2021:02:07|21:06:32]     surfaces 2428..2441: shader 15, texture 162, lightmap 1
120
[2021:02:07|21:06:32]     surfaces 2442..2470: shader 15, texture 163, lightmap 0
121
[2021:02:07|21:06:32]     surfaces 2471..2475: shader 15, texture 170, lightmap 0
122
[2021:02:07|21:06:32]     surfaces 2476..2500: shader 15, texture 171, lightmap 0
123
[2021:02:07|21:06:32]     surfaces 2501..2532: shader 15, texture 177, lightmap 0
124
[2021:02:07|21:06:32]     surfaces 2533..2535: shader 15, texture 179, lightmap 0
125
[2021:02:07|21:06:32]     surfaces 2536..2547: shader 15, texture 179, lightmap 1
126
[2021:02:07|21:06:32]     surfaces 2548..2560: shader 15, texture 180, lightmap 0
127
[2021:02:07|21:06:32]     surfaces 2561..2572: shader 15, texture 180, lightmap 1
128
[2021:02:07|21:06:32]     surfaces 2573..2576: shader 15, texture 180, lightmap 2
129
[2021:02:07|21:06:32]     surfaces 2577..2578: shader 15, texture 181, lightmap 0
130
[2021:02:07|21:06:32]     surfaces 2579..2584: shader 15, texture 181, lightmap 1
131
[2021:02:07|21:06:32]     surfaces 2585..2600: shader 15, texture 185, lightmap 0
132
[2021:02:07|21:06:32]     surfaces 2601..2602: shader 15, texture 185, lightmap 1
133
[2021:02:07|21:06:32]     surfaces 2603..2604: shader 15, texture 185, lightmap 2
134
[2021:02:07|21:06:32]     surfaces 2605..2609: shader 15, texture 187, lightmap 0
135
[2021:02:07|21:06:32]     surfaces 2610..2617: shader 15, texture 187, lightmap 1
136
[2021:02:07|21:06:32]     surfaces 2618..2622: shader 15, texture 187, lightmap 2
137
[2021:02:07|21:06:32]     surfaces 2623..2622: shader 15, texture 188, lightmap 1
138
[2021:02:07|21:06:32]     surfaces 2624..2625: shader 15, texture 190, lightmap 0
139
[2021:02:07|21:06:32]     surfaces 2626..2627: shader 15, texture 191, lightmap 0
140
[2021:02:07|21:06:32]     surfaces 2628..2627: shader 15, texture 192, lightmap 0
141
[2021:02:07|21:06:32]     surfaces 2629..2637: shader 15, texture 195, lightmap 0
142
[2021:02:07|21:06:32]     surfaces 2638..2652: shader 15, texture 195, lightmap 1
143
[2021:02:07|21:06:32]     surfaces 2653..2656: shader 15, texture 195, lightmap 2
144
[2021:02:07|21:06:32]     surfaces 2657..2661: shader 15, texture 196, lightmap 1
145
[2021:02:07|21:06:32]     surfaces 2662..2663: shader 15, texture 198, lightmap 0
146
[2021:02:07|21:06:32]     surfaces 2664..2663: shader 15, texture 202, lightmap 0
147
[2021:02:07|21:06:32]     surfaces 2665..2663: shader 15, texture 203, lightmap 2
148
[2021:02:07|21:06:32]     surfaces 2666..2673: shader 15, texture 206, lightmap 1
149
[2021:02:07|21:06:32]     surfaces 2674..2678: shader 15, texture 208, lightmap 0
150
[2021:02:07|21:06:32]     surfaces 2679..2687: shader 15, texture 209, lightmap 0
151
[2021:02:07|21:06:32]     surfaces 2688..2687: shader 15, texture 209, lightmap 1
152
[2021:02:07|21:06:32]     surfaces 2689..2690: shader 15, texture 210, lightmap 0
153
[2021:02:07|21:06:32]     surfaces 2691..2690: shader 15, texture 211, lightmap 1
154
[2021:02:07|21:06:32]     surfaces 2692..2690: shader 15, texture 215, lightmap 0
155
[2021:02:07|21:06:32]     surfaces 2693..2694: shader 15, texture 215, lightmap 1
156
[2021:02:07|21:06:32]     surfaces 2695..2694: shader 15, texture 215, lightmap 2
157
[2021:02:07|21:06:32]     surfaces 2696..2699: shader 15, texture 216, lightmap 0
158
[2021:02:07|21:06:32]     surfaces 2700..2703: shader 15, texture 220, lightmap 0
159
[2021:02:07|21:06:32]     surfaces 2704..2711: shader 15, texture 220, lightmap 1
160
[2021:02:07|21:06:32]     surfaces 2712..2715: shader 15, texture 220, lightmap 2


Добавлено 07-02-2021 в 21:50:

На карте hd_industrialzone тоже всё нехорошо:
C++ Source Code:
1
[2021:02:07|21:47:11] Mod_ResortFaces: faces count 21079, resorted:
2
[2021:02:07|21:47:11]     surfaces 0..33: shader 0, texture 140, lightmap 0
3
[2021:02:07|21:47:11]     surfaces 34..33: shader 0, texture 144, lightmap 0
4
[2021:02:07|21:47:11]     surfaces 35..39: shader 0, texture 148, lightmap 0
5
[2021:02:07|21:47:11]     surfaces 40..39: shader 0, texture 678, lightmap 0
6
[2021:02:07|21:47:11]     surfaces 41..44: shader 0, texture 680, lightmap 0
7
[2021:02:07|21:47:11]     surfaces 45..50: shader 0, texture 685, lightmap 0
8
[2021:02:07|21:47:11]     surfaces 51..59: shader 0, texture 687, lightmap 0
9
[2021:02:07|21:47:11]     surfaces 60..62: shader 0, texture 689, lightmap 0
10
[2021:02:07|21:47:11]     surfaces 63..360: shader 0, texture 690, lightmap 0
11
[2021:02:07|21:47:11]     surfaces 361..366: shader 0, texture 697, lightmap 0
12
[2021:02:07|21:47:11]     surfaces 367..372: shader 0, texture 702, lightmap 0
13
[2021:02:07|21:47:11]     surfaces 373..372: shader 0, texture 705, lightmap 0
14
[2021:02:07|21:47:11]     surfaces 374..372: shader 0, texture 706, lightmap 0
15
[2021:02:07|21:47:11]     surfaces 375..417: shader 0, texture 707, lightmap 0
16
[2021:02:07|21:47:11]     surfaces 418..431: shader 0, texture 714, lightmap 0
17
[2021:02:07|21:47:11]     surfaces 432..449: shader 0, texture 715, lightmap 0
18
[2021:02:07|21:47:11]     surfaces 450..479: shader 0, texture 716, lightmap 0
19
[2021:02:07|21:47:11]     surfaces 480..513: shader 0, texture 719, lightmap 0
20
[2021:02:07|21:47:11]     surfaces 514..743: shader 0, texture 720, lightmap 0
21
[2021:02:07|21:47:11]     surfaces 744..745: shader 0, texture 725, lightmap 0
22
[2021:02:07|21:47:11]     surfaces 746..782: shader 0, texture 726, lightmap 0
23
[2021:02:07|21:47:11]     surfaces 783..788: shader 0, texture 758, lightmap 0
24
[2021:02:07|21:47:11]     surfaces 789..790: shader 0, texture 759, lightmap 0
25
[2021:02:07|21:47:11]     surfaces 791..814: shader 0, texture 760, lightmap 0
26
[2021:02:07|21:47:11]     surfaces 815..814: shader 0, texture 761, lightmap 0
27
[2021:02:07|21:47:11]     surfaces 816..825: shader 0, texture 766, lightmap 0
28
[2021:02:07|21:47:11]     surfaces 826..972: shader 0, texture 770, lightmap 0
29
[2021:02:07|21:47:11]     surfaces 973..975: shader 0, texture 774, lightmap 0
30
[2021:02:07|21:47:11]     surfaces 976..977: shader 0, texture 775, lightmap 0
31
[2021:02:07|21:47:11]     surfaces 978..977: shader 0, texture 776, lightmap 0
32
[2021:02:07|21:47:11]     surfaces 979..1095: shader 0, texture 777, lightmap 0
33
[2021:02:07|21:47:11]     surfaces 1096..1161: shader 0, texture 778, lightmap 0
34
[2021:02:07|21:47:11]     surfaces 1162..1179: shader 0, texture 779, lightmap 0
35
[2021:02:07|21:47:11]     surfaces 1180..1494: shader 0, texture 780, lightmap 0
36
[2021:02:07|21:47:11]     surfaces 1495..1782: shader 0, texture 781, lightmap 0
37
[2021:02:07|21:47:11]     surfaces 1783..1806: shader 0, texture 782, lightmap 0
38
[2021:02:07|21:47:11]     surfaces 1807..1962: shader 0, texture 783, lightmap 0
39
[2021:02:07|21:47:11]     surfaces 1963..2154: shader 0, texture 784, lightmap 0
40
[2021:02:07|21:47:11]     surfaces 2155..2226: shader 0, texture 785, lightmap 0
41
[2021:02:07|21:47:11]     surfaces 2227..2232: shader 0, texture 790, lightmap 0
42
[2021:02:07|21:47:11]     surfaces 2233..2280: shader 0, texture 792, lightmap 0
43
[2021:02:07|21:47:11]     surfaces 2281..2316: shader 0, texture 793, lightmap 0
44
[2021:02:07|21:47:11]     surfaces 2317..2358: shader 0, texture 794, lightmap 0
45
[2021:02:07|21:47:11]     surfaces 2359..2418: shader 0, texture 795, lightmap 0
46
[2021:02:07|21:47:11]     surfaces 2419..2466: shader 0, texture 796, lightmap 0
47
[2021:02:07|21:47:11]     surfaces 2467..2488: shader 0, texture 797, lightmap 0
48
[2021:02:07|21:47:11]     surfaces 2489..2566: shader 0, texture 798, lightmap 0
49
[2021:02:07|21:47:11]     surfaces 2567..3867: shader 0, texture 800, lightmap 0
50
[2021:02:07|21:47:11]     surfaces 3868..3867: shader 0, texture 823, lightmap 0
51
[2021:02:07|21:47:11]     surfaces 3869..4310: shader 0, texture 824, lightmap 0
52
[2021:02:07|21:47:11]     surfaces 4311..4313: shader 0, texture 829, lightmap 0
53
[2021:02:07|21:47:11]     surfaces 4314..4575: shader 0, texture 839, lightmap 0
54
[2021:02:07|21:47:11]     surfaces 4576..4589: shader 0, texture 840, lightmap 0
55
[2021:02:07|21:47:11]     surfaces 4590..4637: shader 0, texture 847, lightmap 0
56
[2021:02:07|21:47:11]     surfaces 4638..4647: shader 0, texture 851, lightmap 0
57
[2021:02:07|21:47:11]     surfaces 4648..4649: shader 0, texture 852, lightmap 0
58
[2021:02:07|21:47:11]     surfaces 4650..4762: shader 0, texture 858, lightmap 0
59
[2021:02:07|21:47:11]     surfaces 4763..4770: shader 0, texture 859, lightmap 0
60
[2021:02:07|21:47:11]     surfaces 4771..4776: shader 0, texture 861, lightmap 0
61
[2021:02:07|21:47:11]     surfaces 4777..5358: shader 0, texture 862, lightmap 0
62
[2021:02:07|21:47:11]     surfaces 5359..5665: shader 0, texture 863, lightmap 0
63
[2021:02:07|21:47:11]     surfaces 5666..5675: shader 0, texture 864, lightmap 0
64
[2021:02:07|21:47:11]     surfaces 5676..6028: shader 0, texture 866, lightmap 0
65
[2021:02:07|21:47:11]     surfaces 6029..6031: shader 0, texture 868, lightmap 0
66
[2021:02:07|21:47:11]     surfaces 6032..6101: shader 0, texture 869, lightmap 0
67
[2021:02:07|21:47:11]     surfaces 6102..6150: shader 0, texture 874, lightmap 0
68
[2021:02:07|21:47:11]     surfaces 6151..6461: shader 0, texture 876, lightmap 0
69
[2021:02:07|21:47:11]     surfaces 6462..6502: shader 0, texture 877, lightmap 0
70
[2021:02:07|21:47:11]     surfaces 6503..7068: shader 0, texture 879, lightmap 0
71
[2021:02:07|21:47:11]     surfaces 7069..7068: shader 0, texture 881, lightmap 0
72
[2021:02:07|21:47:11]     surfaces 7070..7092: shader 0, texture 884, lightmap 0
73
[2021:02:07|21:47:11]     surfaces 7093..7094: shader 0, texture 887, lightmap 0
74
[2021:02:07|21:47:11]     surfaces 7095..7178: shader 0, texture 888, lightmap 0
75
[2021:02:07|21:47:11]     surfaces 7179..7190: shader 0, texture 890, lightmap 0
76
[2021:02:07|21:47:11]     surfaces 7191..7825: shader 0, texture 893, lightmap 0
77
[2021:02:07|21:47:11]     surfaces 7826..7879: shader 0, texture 900, lightmap 0
78
[2021:02:07|21:47:11]     surfaces 7880..8019: shader 0, texture 901, lightmap 0
79
[2021:02:07|21:47:11]     surfaces 8020..8319: shader 0, texture 902, lightmap 0
80
[2021:02:07|21:47:11]     surfaces 8320..8380: shader 0, texture 903, lightmap 0
81
[2021:02:07|21:47:11]     surfaces 8381..8408: shader 0, texture 904, lightmap 0
82
[2021:02:07|21:47:11]     surfaces 8409..8468: shader 0, texture 905, lightmap 0
83
[2021:02:07|21:47:11]     surfaces 8469..8488: shader 0, texture 907, lightmap 0
84
[2021:02:07|21:47:11]     surfaces 8489..8494: shader 0, texture 910, lightmap 0
85
[2021:02:07|21:47:11]     surfaces 8495..8494: shader 0, texture 911, lightmap 0
86
[2021:02:07|21:47:11]     surfaces 8496..8519: shader 0, texture 913, lightmap 0
87
[2021:02:07|21:47:11]     surfaces 8520..8618: shader 0, texture 917, lightmap 0
88
[2021:02:07|21:47:11]     surfaces 8619..8624: shader 0, texture 919, lightmap 0
89
[2021:02:07|21:47:11]     surfaces 8625..8630: shader 0, texture 920, lightmap 0
90
[2021:02:07|21:47:11]     surfaces 8631..8634: shader 14, texture 143, lightmap 0
91
[2021:02:07|21:47:11]     surfaces 8635..8634: shader 14, texture 145, lightmap 0
92
[2021:02:07|21:47:11]     surfaces 8636..8634: shader 14, texture 146, lightmap 0
93
[2021:02:07|21:47:11]     surfaces 8637..8645: shader 14, texture 147, lightmap 0
94
[2021:02:07|21:47:11]     surfaces 8646..8654: shader 14, texture 148, lightmap 0
95
[2021:02:07|21:47:11]     surfaces 8655..8656: shader 14, texture 149, lightmap 0
96
[2021:02:07|21:47:11]     surfaces 8657..8658: shader 14, texture 658, lightmap 0
97
[2021:02:07|21:47:11]     surfaces 8659..8660: shader 14, texture 659, lightmap 0
98
[2021:02:07|21:47:11]     surfaces 8661..8678: shader 14, texture 660, lightmap 0
99
[2021:02:07|21:47:11]     surfaces 8679..8687: shader 14, texture 661, lightmap 0
100
[2021:02:07|21:47:11]     surfaces 8688..8689: shader 14, texture 674, lightmap 0
101
[2021:02:07|21:47:11]     surfaces 8690..8689: shader 14, texture 679, lightmap 0
102
[2021:02:07|21:47:11]     surfaces 8691..8693: shader 14, texture 680, lightmap 0
103
[2021:02:07|21:47:11]     surfaces 8694..8693: shader 14, texture 683, lightmap 0
104
[2021:02:07|21:47:11]     surfaces 8695..8701: shader 14, texture 684, lightmap 0
105
[2021:02:07|21:47:11]     surfaces 8702..8710: shader 14, texture 688, lightmap 0
106
[2021:02:07|21:47:11]     surfaces 8711..9228: shader 14, texture 690, lightmap 0
107
[2021:02:07|21:47:11]     surfaces 9229..9234: shader 14, texture 691, lightmap 0
108
[2021:02:07|21:47:11]     surfaces 9235..9236: shader 14, texture 692, lightmap 0
109
[2021:02:07|21:47:11]     surfaces 9237..9531: shader 14, texture 693, lightmap 0
110
[2021:02:07|21:47:11]     surfaces 9532..9531: shader 14, texture 694, lightmap 0
111
[2021:02:07|21:47:11]     surfaces 9533..9555: shader 14, texture 695, lightmap 0
112
[2021:02:07|21:47:11]     surfaces 9556..9559: shader 14, texture 696, lightmap 0
113
[2021:02:07|21:47:11]     surfaces 9560..9561: shader 14, texture 698, lightmap 0
114
[2021:02:07|21:47:11]     surfaces 9562..9573: shader 14, texture 699, lightmap 0
115
[2021:02:07|21:47:11]     surfaces 9574..9583: shader 14, texture 700, lightmap 0
116
[2021:02:07|21:47:11]     surfaces 9584..9587: shader 14, texture 701, lightmap 0
117
[2021:02:07|21:47:11]     surfaces 9588..9593: shader 14, texture 702, lightmap 0
118
[2021:02:07|21:47:11]     surfaces 9594..9593: shader 14, texture 703, lightmap 0
119
[2021:02:07|21:47:11]     surfaces 9595..9597: shader 14, texture 705, lightmap 0
120
[2021:02:07|21:47:11]     surfaces 9598..9928: shader 14, texture 707, lightmap 0
121
[2021:02:07|21:47:11]     surfaces 9929..9939: shader 14, texture 708, lightmap 0
122
[2021:02:07|21:47:11]     surfaces 9940..9939: shader 14, texture 709, lightmap 0
123
[2021:02:07|21:47:11]     surfaces 9941..9946: shader 14, texture 710, lightmap 0
124
[2021:02:07|21:47:11]     surfaces 9947..10079: shader 14, texture 711, lightmap 0
125
[2021:02:07|21:47:11]     surfaces 10080..10199: shader 14, texture 712, lightmap 0
126
[2021:02:07|21:47:11]     surfaces 10200..10199: shader 14, texture 713, lightmap 0
127
[2021:02:07|21:47:11]     surfaces 10201..10202: shader 14, texture 715, lightmap 0
128
[2021:02:07|21:47:11]     surfaces 10203..10206: shader 14, texture 717, lightmap 0
129
[2021:02:07|21:47:11]     surfaces 10207..10211: shader 14, texture 718, lightmap 0
130
[2021:02:07|21:47:11]     surfaces 10212..10214: shader 14, texture 721, lightmap 0
131
[2021:02:07|21:47:11]     surfaces 10215..10214: shader 14, texture 722, lightmap 0
132
[2021:02:07|21:47:11]     surfaces 10216..10224: shader 14, texture 723, lightmap 0
133
[2021:02:07|21:47:11]     surfaces 10225..10277: shader 14, texture 724, lightmap 0
134
[2021:02:07|21:47:11]     surfaces 10278..10296: shader 14, texture 726, lightmap 0
135
[2021:02:07|21:47:11]     surfaces 10297..10304: shader 14, texture 727, lightmap 0
136
[2021:02:07|21:47:11]     surfaces 10305..10318: shader 14, texture 728, lightmap 0
137
[2021:02:07|21:47:11]     surfaces 10319..10328: shader 14, texture 729, lightmap 0
138
[2021:02:07|21:47:11]     surfaces 10329..10333: shader 14, texture 730, lightmap 0
139
[2021:02:07|21:47:11]     surfaces 10334..10338: shader 14, texture 748, lightmap 0
140
[2021:02:07|21:47:11]     surfaces 10339..10345: shader 14, texture 749, lightmap 0
141
[2021:02:07|21:47:11]     surfaces 10346..10352: shader 14, texture 750, lightmap 0
142
[2021:02:07|21:47:11]     surfaces 10353..10363: shader 14, texture 751, lightmap 0
143
[2021:02:07|21:47:11]     surfaces 10364..10365: shader 14, texture 752, lightmap 0
144
[2021:02:07|21:47:11]     surfaces 10366..10369: shader 14, texture 753, lightmap 0
145
[2021:02:07|21:47:11]     surfaces 10370..10371: shader 14, texture 754, lightmap 0
146
[2021:02:07|21:47:11]     surfaces 10372..10379: shader 14, texture 755, lightmap 0
147
[2021:02:07|21:47:11]     surfaces 10380..10440: shader 14, texture 756, lightmap 0
148
[2021:02:07|21:47:11]     surfaces 10441..10454: shader 14, texture 757, lightmap 0
149
[2021:02:07|21:47:11]     surfaces 10455..10456: shader 14, texture 762, lightmap 0
150
[2021:02:07|21:47:11]     surfaces 10457..10456: shader 14, texture 763, lightmap 0
151
[2021:02:07|21:47:11]     surfaces 10458..10456: shader 14, texture 764, lightmap 0
152
[2021:02:07|21:47:11]     surfaces 10459..10611: shader 14, texture 765, lightmap 0
153
[2021:02:07|21:47:11]     surfaces 10612..10613: shader 14, texture 767, lightmap 0
154
[2021:02:07|21:47:11]     surfaces 10614..10633: shader 14, texture 768, lightmap 0
155
[2021:02:07|21:47:11]     surfaces 10634..10686: shader 14, texture 769, lightmap 0
156
[2021:02:07|21:47:11]     surfaces 10687..10766: shader 14, texture 770, lightmap 0
157
[2021:02:07|21:47:11]     surfaces 10767..10770: shader 14, texture 772, lightmap 0
158
[2021:02:07|21:47:11]     surfaces 10771..10770: shader 14, texture 773, lightmap 0
159
[2021:02:07|21:47:11]     surfaces 10772..10770: shader 14, texture 786, lightmap 0
160
[2021:02:07|21:47:11]     surfaces 10773..10770: shader 14, texture 787, lightmap 0
161
[2021:02:07|21:47:11]     surfaces 10774..10821: shader 14, texture 788, lightmap 0
162
[2021:02:07|21:47:11]     surfaces 10822..10823: shader 14, texture 789, lightmap 0
163
[2021:02:07|21:47:11]     surfaces 10824..10838: shader 14, texture 790, lightmap 0
164
[2021:02:07|21:47:11]     surfaces 10839..10840: shader 14, texture 791, lightmap 0
165
[2021:02:07|21:47:11]     surfaces 10841..10842: shader 14, texture 794, lightmap 0
166
[2021:02:07|21:47:11]     surfaces 10843..10876: shader 14, texture 799, lightmap 0
167
[2021:02:07|21:47:11]     surfaces 10877..11129: shader 14, texture 800, lightmap 0
168
[2021:02:07|21:47:11]     surfaces 11130..11162: shader 14, texture 801, lightmap 0
169
[2021:02:07|21:47:11]     surfaces 11163..11250: shader 14, texture 802, lightmap 0
170
[2021:02:07|21:47:11]     surfaces 11251..11259: shader 14, texture 803, lightmap 0
171
[2021:02:07|21:47:11]     surfaces 11260..11272: shader 14, texture 804, lightmap 0
172
[2021:02:07|21:47:11]     surfaces 11273..11272: shader 14, texture 807, lightmap 0
173
[2021:02:07|21:47:11]     surfaces 11274..11272: shader 14, texture 808, lightmap 0
174
[2021:02:07|21:47:11]     surfaces 11275..11272: shader 14, texture 809, lightmap 0
175
[2021:02:07|21:47:11]     surfaces 11276..11279: shader 14, texture 810, lightmap 0
176
[2021:02:07|21:47:11]     surfaces 11280..11289: shader 14, texture 811, lightmap 0
177
[2021:02:07|21:47:11]     surfaces 11290..11360: shader 14, texture 812, lightmap 0
178
[2021:02:07|21:47:11]     surfaces 11361..11370: shader 14, texture 813, lightmap 0
179
[2021:02:07|21:47:11]     surfaces 11371..11427: shader 14, texture 814, lightmap 0
180
[2021:02:07|21:47:11]     surfaces 11428..11427: shader 14, texture 815, lightmap 0
181
[2021:02:07|21:47:11]     surfaces 11429..11452: shader 14, texture 816, lightmap 0
182
[2021:02:07|21:47:11]     surfaces 11453..11484: shader 14, texture 817, lightmap 0
183
[2021:02:07|21:47:11]     surfaces 11485..11495: shader 14, texture 818, lightmap 0
184
[2021:02:07|21:47:11]     surfaces 11496..11502: shader 14, texture 819, lightmap 0
185
[2021:02:07|21:47:11]     surfaces 11503..11511: shader 14, texture 820, lightmap 0
186
[2021:02:07|21:47:11]     surfaces 11512..11511: shader 14, texture 821, lightmap 0
187
[2021:02:07|21:47:11]     surfaces 11513..11546: shader 14, texture 822, lightmap 0
188
[2021:02:07|21:47:11]     surfaces 11547..11617: shader 14, texture 824, lightmap 0
189
[2021:02:07|21:47:11]     surfaces 11618..11623: shader 14, texture 825, lightmap 0
190
[2021:02:07|21:47:11]     surfaces 11624..12082: shader 14, texture 826, lightmap 0
191
[2021:02:07|21:47:11]     surfaces 12083..12105: shader 14, texture 827, lightmap 0
192
[2021:02:07|21:47:11]     surfaces 12106..12123: shader 14, texture 828, lightmap 0
193
[2021:02:07|21:47:11]     surfaces 12124..12146: shader 14, texture 829, lightmap 0
194
[2021:02:07|21:47:11]     surfaces 12147..12154: shader 14, texture 830, lightmap 0
195
[2021:02:07|21:47:11]     surfaces 12155..12170: shader 14, texture 831, lightmap 0
196
[2021:02:07|21:47:11]     surfaces 12171..12186: shader 14, texture 832, lightmap 0
197
[2021:02:07|21:47:11]     surfaces 12187..12236: shader 14, texture 833, lightmap 0
198
[2021:02:07|21:47:11]     surfaces 12237..12236: shader 14, texture 834, lightmap 0
199
[2021:02:07|21:47:11]     surfaces 12238..12241: shader 14, texture 835, lightmap 0
200
[2021:02:07|21:47:11]     surfaces 12242..12241: shader 14, texture 836, lightmap 0
201
[2021:02:07|21:47:11]     surfaces 12243..12250: shader 14, texture 837, lightmap 0
202
[2021:02:07|21:47:11]     surfaces 12251..12252: shader 14, texture 838, lightmap 0
203
[2021:02:07|21:47:11]     surfaces 12253..12527: shader 14, texture 839, lightmap 0
204
[2021:02:07|21:47:11]     surfaces 12528..12777: shader 14, texture 840, lightmap 0
205
[2021:02:07|21:47:11]     surfaces 12778..12787: shader 14, texture 841, lightmap 0
206
[2021:02:07|21:47:11]     surfaces 12788..12811: shader 14, texture 842, lightmap 0
207
[2021:02:07|21:47:11]     surfaces 12812..12811: shader 14, texture 843, lightmap 0
208
[2021:02:07|21:47:11]     surfaces 12813..12811: shader 14, texture 844, lightmap 0
209
[2021:02:07|21:47:11]     surfaces 12814..12837: shader 14, texture 845, lightmap 0
210
[2021:02:07|21:47:11]     surfaces 12838..12899: shader 14, texture 846, lightmap 0
211
[2021:02:07|21:47:11]     surfaces 12900..12908: shader 14, texture 847, lightmap 0
212
[2021:02:07|21:47:11]     surfaces 12909..12910: shader 14, texture 848, lightmap 0
213
[2021:02:07|21:47:11]     surfaces 12911..12918: shader 14, texture 849, lightmap 0
214
[2021:02:07|21:47:11]     surfaces 12919..13026: shader 14, texture 850, lightmap 0
215
[2021:02:07|21:47:11]     surfaces 13027..13028: shader 14, texture 853, lightmap 0
216
[2021:02:07|21:47:11]     surfaces 13029..13780: shader 14, texture 854, lightmap 0
217
[2021:02:07|21:47:11]     surfaces 13781..13790: shader 14, texture 857, lightmap 0
218
[2021:02:07|21:47:11]     surfaces 13791..13970: shader 14, texture 858, lightmap 0
219
[2021:02:07|21:47:11]     surfaces 13971..13974: shader 14, texture 859, lightmap 0
220
[2021:02:07|21:47:11]     surfaces 13975..13978: shader 14, texture 860, lightmap 0
221
[2021:02:07|21:47:11]     surfaces 13979..14505: shader 14, texture 862, lightmap 0
222
[2021:02:07|21:47:11]     surfaces 14506..14536: shader 14, texture 864, lightmap 0
223
[2021:02:07|21:47:11]     surfaces 14537..14557: shader 14, texture 865, lightmap 0
224
[2021:02:07|21:47:11]     surfaces 14558..15249: shader 14, texture 866, lightmap 0
225
[2021:02:07|21:47:11]     surfaces 15250..15330: shader 14, texture 867, lightmap 0
226
[2021:02:07|21:47:11]     surfaces 15331..15449: shader 14, texture 868, lightmap 0
227
[2021:02:07|21:47:11]     surfaces 15450..15449: shader 14, texture 870, lightmap 0
228
[2021:02:07|21:47:11]     surfaces 15451..15469: shader 14, texture 873, lightmap 0
229
[2021:02:07|21:47:11]     surfaces 15470..15547: shader 14, texture 874, lightmap 0
230
[2021:02:07|21:47:11]     surfaces 15548..15547: shader 14, texture 875, lightmap 0
231
[2021:02:07|21:47:11]     surfaces 15549..15635: shader 14, texture 876, lightmap 0
232
[2021:02:07|21:47:11]     surfaces 15636..15659: shader 14, texture 878, lightmap 0
233
[2021:02:07|21:47:11]     surfaces 15660..15727: shader 14, texture 879, lightmap 0
234
[2021:02:07|21:47:11]     surfaces 15728..15827: shader 14, texture 880, lightmap 0
235
[2021:02:07|21:47:11]     surfaces 15828..15835: shader 14, texture 881, lightmap 0
236
[2021:02:07|21:47:11]     surfaces 15836..15864: shader 14, texture 882, lightmap 0
237
[2021:02:07|21:47:11]     surfaces 15865..15976: shader 14, texture 883, lightmap 0
238
[2021:02:07|21:47:11]     surfaces 15977..17018: shader 14, texture 884, lightmap 0
239
[2021:02:07|21:47:11]     surfaces 17019..17255: shader 14, texture 885, lightmap 0
240
[2021:02:07|21:47:11]     surfaces 17256..17255: shader 14, texture 886, lightmap 0
241
[2021:02:07|21:47:11]     surfaces 17257..17258: shader 14, texture 887, lightmap 0
242
[2021:02:07|21:47:11]     surfaces 17259..17260: shader 14, texture 888, lightmap 0
243
[2021:02:07|21:47:11]     surfaces 17261..17260: shader 14, texture 889, lightmap 0
244
[2021:02:07|21:47:11]     surfaces 17262..17263: shader 14, texture 890, lightmap 0
245
[2021:02:07|21:47:11]     surfaces 17264..17267: shader 14, texture 892, lightmap 0
246
[2021:02:07|21:47:11]     surfaces 17268..17281: shader 14, texture 894, lightmap 0
247
[2021:02:07|21:47:11]     surfaces 17282..17607: shader 14, texture 895, lightmap 0
248
[2021:02:07|21:47:11]     surfaces 17608..18307: shader 14, texture 896, lightmap 0
249
[2021:02:07|21:47:11]     surfaces 18308..18309: shader 14, texture 897, lightmap 0
250
[2021:02:07|21:47:11]     surfaces 18310..18396: shader 14, texture 898, lightmap 0
251
[2021:02:07|21:47:11]     surfaces 18397..18522: shader 14, texture 899, lightmap 0
252
[2021:02:07|21:47:11]     surfaces 18523..18801: shader 14, texture 901, lightmap 0
253
[2021:02:07|21:47:11]     surfaces 18802..18906: shader 14, texture 902, lightmap 0
254
[2021:02:07|21:47:11]     surfaces 18907..19337: shader 14, texture 903, lightmap 0
255
[2021:02:07|21:47:11]     surfaces 19338..19406: shader 14, texture 904, lightmap 0
256
[2021:02:07|21:47:11]     surfaces 19407..19422: shader 14, texture 905, lightmap 0
257
[2021:02:07|21:47:11]     surfaces 19423..19586: shader 14, texture 906, lightmap 0
258
[2021:02:07|21:47:11]     surfaces 19587..19609: shader 14, texture 907, lightmap 0
259
[2021:02:07|21:47:11]     surfaces 19610..19755: shader 14, texture 908, lightmap 0
260
[2021:02:07|21:47:11]     surfaces 19756..19833: shader 14, texture 909, lightmap 0
261
[2021:02:07|21:47:11]     surfaces 19834..19963: shader 14, texture 911, lightmap 0
262
[2021:02:07|21:47:11]     surfaces 19964..20078: shader 14, texture 912, lightmap 0
263
[2021:02:07|21:47:11]     surfaces 20079..20137: shader 14, texture 914, lightmap 0
264
[2021:02:07|21:47:11]     surfaces 20138..20259: shader 14, texture 915, lightmap 0
265
[2021:02:07|21:47:11]     surfaces 20260..20301: shader 14, texture 916, lightmap 0
266
[2021:02:07|21:47:11]     surfaces 20302..20455: shader 14, texture 918, lightmap 0
267
[2021:02:07|21:47:11]     surfaces 20456..20492: shader 14, texture 920, lightmap 0
268
[2021:02:07|21:47:11]     surfaces 20493..20543: shader 14, texture 921, lightmap 0
269
[2021:02:07|21:47:11]     surfaces 20544..20653: shader 14, texture 922, lightmap 0
270
[2021:02:07|21:47:11]     surfaces 20654..20660: shader 14, texture 923, lightmap 0
271
[2021:02:07|21:47:11]     surfaces 20661..20662: shader 15, texture 692, lightmap 0
272
[2021:02:07|21:47:11]     surfaces 20663..20664: shader 15, texture 707, lightmap 0
273
[2021:02:07|21:47:11]     surfaces 20665..20664: shader 15, texture 712, lightmap 0
274
[2021:02:07|21:47:11]     surfaces 20666..20667: shader 15, texture 726, lightmap 0
275
[2021:02:07|21:47:11]     surfaces 20668..20680: shader 15, texture 800, lightmap 0
276
[2021:02:07|21:47:11]     surfaces 20681..20686: shader 15, texture 824, lightmap 0
277
[2021:02:07|21:47:11]     surfaces 20687..20719: shader 15, texture 826, lightmap 0
278
[2021:02:07|21:47:11]     surfaces 20720..20721: shader 15, texture 827, lightmap 0
279
[2021:02:07|21:47:11]     surfaces 20722..20729: shader 15, texture 840, lightmap 0
280
[2021:02:07|21:47:11]     surfaces 20730..20729: shader 15, texture 847, lightmap 0
281
[2021:02:07|21:47:11]     surfaces 20731..20734: shader 15, texture 850, lightmap 0
282
[2021:02:07|21:47:11]     surfaces 20735..20740: shader 15, texture 862, lightmap 0
283
[2021:02:07|21:47:11]     surfaces 20741..20745: shader 15, texture 864, lightmap 0
284
[2021:02:07|21:47:11]     surfaces 20746..20749: shader 15, texture 875, lightmap 0
285
[2021:02:07|21:47:11]     surfaces 20750..20802: shader 15, texture 884, lightmap 0
286
[2021:02:07|21:47:11]     surfaces 20803..20806: shader 15, texture 892, lightmap 0
287
[2021:02:07|21:47:11]     surfaces 20807..20812: shader 15, texture 901, lightmap 0
288
[2021:02:07|21:47:11]     surfaces 20813..20814: shader 15, texture 907, lightmap 0
289
[2021:02:07|21:47:11]     surfaces 20815..20818: shader 15, texture 911, lightmap 0
290
[2021:02:07|21:47:11]     surfaces 20819..20821: shader 20, texture 702, lightmap 0
291
[2021:02:07|21:47:11]     surfaces 20822..20824: shader 20, texture 703, lightmap 0
292
[2021:02:07|21:47:11]     surfaces 20825..20826: shader 20, texture 704, lightmap 0
293
[2021:02:07|21:47:11]     surfaces 20827..20826: shader 20, texture 705, lightmap 0
294
[2021:02:07|21:47:11]     surfaces 20828..20857: shader 20, texture 707, lightmap 0
295
[2021:02:07|21:47:11]     surfaces 20858..20859: shader 20, texture 713, lightmap 0
296
[2021:02:07|21:47:11]     surfaces 20860..20859: shader 20, texture 717, lightmap 0
297
[2021:02:07|21:47:11]     surfaces 20861..20864: shader 20, texture 727, lightmap 0
298
[2021:02:07|21:47:11]     surfaces 20865..20867: shader 20, texture 771, lightmap 0
299
[2021:02:07|21:47:11]     surfaces 20868..20867: shader 20, texture 800, lightmap 0
300
[2021:02:07|21:47:11]     surfaces 20869..20870: shader 20, texture 805, lightmap 0
301
[2021:02:07|21:47:11]     surfaces 20871..20873: shader 20, texture 806, lightmap 0
302
[2021:02:07|21:47:11]     surfaces 20874..20873: shader 20, texture 815, lightmap 0
303
[2021:02:07|21:47:11]     surfaces 20875..20895: shader 20, texture 824, lightmap 0
304
[2021:02:07|21:47:11]     surfaces 20896..20904: shader 20, texture 839, lightmap 0
305
[2021:02:07|21:47:11]     surfaces 20905..20912: shader 20, texture 841, lightmap 0
306
[2021:02:07|21:47:11]     surfaces 20913..20912: shader 20, texture 848, lightmap 0
307
[2021:02:07|21:47:11]     surfaces 20914..20915: shader 20, texture 855, lightmap 0
308
[2021:02:07|21:47:11]     surfaces 20916..20915: shader 20, texture 856, lightmap 0
309
[2021:02:07|21:47:11]     surfaces 20917..20925: shader 20, texture 866, lightmap 0
310
[2021:02:07|21:47:11]     surfaces 20926..20927: shader 20, texture 871, lightmap 0
311
[2021:02:07|21:47:11]     surfaces 20928..20927: shader 20, texture 872, lightmap 0
312
[2021:02:07|21:47:11]     surfaces 20929..20996: shader 20, texture 874, lightmap 0
313
[2021:02:07|21:47:11]     surfaces 20997..21015: shader 20, texture 880, lightmap 0
314
[2021:02:07|21:47:11]     surfaces 21016..21031: shader 20, texture 881, lightmap 0
315
[2021:02:07|21:47:11]     surfaces 21032..21037: shader 20, texture 884, lightmap 0
316
[2021:02:07|21:47:11]     surfaces 21038..21037: shader 20, texture 891, lightmap 0
317
[2021:02:07|21:47:11]     surfaces 21039..21037: shader 20, texture 901, lightmap 0
318
[2021:02:07|21:47:11]     surfaces 21040..21076: shader 20, texture 916, lightmap 0
319
[2021:02:07|21:47:11]     surfaces 21077..21076: shader 20, texture 921, lightmap 0

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-02-2021 в 18:09:

Цитата:
SNMetamorph писал:
А вот на карте qstyle сортировка как-то не очень сработала:

texture ты как смотришь?

Добавлено 07-02-2021 в 21:03:

Хы. Mod_ResortFaces должен вызываться каждый кадр. Там недоделато.
Апгрейд с 0.65 до 0.81 делался в большой спешке.

Добавлено 07-02-2021 в 21:09:

C++ Source Code:
surfaces 0..7: shader 0, texture 143, lightmap 2

у меня нет такого дебага.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-02-2021 в 18:36:

Цитата:
Дядя Миша писал:
у меня нет такого дебага.

Это я на базе твоего допилил, чтобы не показывало одни и те же параметры для каждого сурфейса.
https://github.com/SNMetamorph/xash...b20c84b3f3eb06e

Цитата:
Дядя Миша писал:
texture ты как смотришь?

В этом коммите тоже есть код. Я в принципе ничего особо там не менял, добавил только группировку для вывода сурфейсов.

Добавлено 07-02-2021 в 22:35:

Ещё на карте hg_industialzone шейдеры сошли с ума что-то.


Добавлено 07-02-2021 в 22:36:

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-02-2021 в 21:08:

75 зеркал?

Добавлено 08-02-2021 в 00:08:

Если есть подозрение на баги, надо в первую очередь тестировать оригинал, а не форк.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 10-02-2021 в 14:49:

Цитата:
Дядя Миша писал:
Если есть подозрение на баги, надо в первую очередь тестировать оригинал, а не форк.

Да, надо будет сравнить. Пока что правда из-за учебы снова нет времени, потом постараюсь как нибудь выделить.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 11-02-2021 в 19:09:

Цитата:
Дядя Миша писал:
75 зеркал?

Ага, поглядел через r_speeds 7, ни одного зеркала нету, надо понять почему оно невалидно сбросы считает иногда.

Добавлено 11-02-2021 в 23:09:

Разобрался почему невалидная инфа отображалась: у меня помимо R_DrawWorldList счетчики еще и инкрементировались в R_DrawBrushList (которая вызывается для каждой брашевой энтити). Теперь картина более ясная стала.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 21-02-2021 в 15:59:

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

Добавлено 21-02-2021 в 19:52:

Цитата:
Дядя Миша писал:
Хы. Mod_ResortFaces должен вызываться каждый кадр. Там недоделато.

А можно про это подробнее? Как это в целом должно работать?

Добавлено 21-02-2021 в 19:59:

Цитата:
SNMetamorph писал:
Теперь надо попытаться что-то с сортировкой сделать, чтобы переключения текстур были выше по приоритету чем переключения шейдеров.

Сейчас попробовал - переключений текстур убавилось буквально на 20-30, зато добавилось 50 переключений шейдеров. Вернул всё обратно.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-02-2021 в 16:41:

SNMetamorph
tr.params_changed должен отслеживать модификацию кваров. Ну можешь в параное глянуть.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 21-02-2021 в 20:19:

В общем, по рендерингу мира картина уже более-менее ясна. В основном сброс буфера происходит из-за смены текстур, коих на более-менее крупных картах немало, и от этого никуда не деться. Они же в текущей ситуации и дают основную просадку FPS. В принципе, тут есть два решения:
1. Группировать все текстуры сурфейсов мира в атлас (придется много всего переделывать)
2. Использовать bindless textures (поддержка есть только в видеокартах >2013 года)

Добавлено 22-02-2021 в 00:19:

Теперь надо изучить рендеринг брашевых энтити, там вроде есть что-то довольно тормозючее.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 06:30:

Переключение текстур на фпс почти не влияет. Смена шейдера - самая дорогая операция.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-02-2021 в 08:01:

Цитата:
Дядя Миша писал:
Переключение текстур на фпс почти не влияет. Смена шейдера - самая дорогая операция.

Ну переключений шейдеров совсем немного, а текстуры по 200-300 раз за кадр на больших картах меняются, в итоге импакт по производительности очень большой.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 09:24:

Вообще, как я уже говорил - далеко не факт, что проблема именно в отрисовке. Ты для начала посмотри сколько нодов и лифов в дереве на этой карте. Отпрофилируй ENGINE_CHECK_VISIBILITY там могут быть совершенно сумашедшие значения.

Для быстрой прикидки можно выключить всю отрисовку энтить и сравнить фпс. Mod_HeadnodeVisible очень тормозной если дерево слишком большое.

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-02-2021 в 09:33:

Цитата:
Дядя Миша писал:
Вообще, как я уже говорил - далеко не факт, что проблема именно в отрисовке. Ты для начала посмотри сколько нодов и лифов в дереве на этой карте. Отпрофилируй ENGINE_CHECK_VISIBILITY там могут быть совершенно сумашедшие значения.

Для быстрой прикидки можно выключить всю отрисовку энтить и сравнить фпс. Mod_HeadnodeVisible очень тормозной если дерево слишком большое.

А это все дело используется в отрисовке через отсортированный список сурфейсов который в Mod_ResortFaces собирается? Там же оно один раз генерится при загрузке уровня, а потом список никак не меняется. Я правда не пойму как потом некоторые сурфейсы куллятся в функции R_DrawWorldList

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 10:34:

Список тут непричём. Это список отсортированных индексов. Из него видимые сурфейсы попадают в другой список, и вот он уже рисуется.
Проведи простой тест - r_norefresh 1
Если фпс не сильно подымется, дело вообще не в отрисовке.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-02-2021 в 13:58:

Цитата:
Дядя Миша писал:
Проведи простой тест - r_norefresh 1
Если фпс не сильно подымется, дело вообще не в отрисовке.

С 50 кадров поднялся до 170, немало.

Добавлено 22-02-2021 в 15:45:

Цитата:
Дядя Миша писал:
Mod_HeadnodeVisible очень тормозной если дерево слишком большое.

Ну это же опять таки от процессора зависит?

Добавлено 22-02-2021 в 17:22:

Как
Цитата:
SNMetamorph писал:
А это все дело используется в отрисовке через отсортированный список сурфейсов который в Mod_ResortFaces собирается? Там же оно один раз генерится при загрузке уровня, а потом список никак не меняется. Я правда не пойму как потом некоторые сурфейсы куллятся в функции R_DrawWorldList

Как щас выяснил, весь куллинг сурфейсов выполняется в двух строках в цикле:

C++ Source Code:
1
void R_DrawWorldList( void )
2
{
3
  ...
4
  for( int i = 0; i < world->numsortedfaces; i++ )
5
  {
6
    int surf_index = world->sortedfaces[i];
7
    if( !CHECKVISBIT( RI->visfaces, surf_index ))
8
      continue;
9
  }
10
  ...
11
}
12
 

Осталось разобраться как заполняется собственно сам RI->visfaces

Добавлено 22-02-2021 в 17:35:

Как я понимаю, R_RecursiveWorldNode пробегает по BSP-дереву, помечает видимые лифы и добавляет сурфейсы в некий список (который в R_DrawWorldList не используется) и как раз таки заполняет RI->visfaces
А в свою очередь R_WorldMarkVisibleFaces делает то же самое, только бегает не по дереву, а тупо последовательно по списку лифов на карте?

Добавлено 22-02-2021 в 17:58:

Сейчас потыкали всем народом квар gl_recursive_world_node, который как раз переключает функции R_RecursiveWorldNode и R_WorldMarkVisibleFaces, в итоге вообще ни у кого нет никакой разницы по производительности. Единственное что я заметил, у меня R_WorldMarkVisibleFaces выполняется малость быстрее.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 14:30:

Цитата:
SNMetamorph писал:
Ну это же опять таки от процессора зависит?

Если рекурсия слишком глубокая, это на любом проце удар по производительности. Ну как цикл while( 1 ); загрузит проц на 100% независимо от его мощности.

Цитата:
SNMetamorph писал:
Сейчас потыкали всем народом квар gl_recursive_world_node

вас там еще и много

Цитата:
SNMetamorph писал:
в итоге вообще ни у кого нет никакой разницы по производительности

я его и оставил кваром.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-02-2021 в 14:46:

Цитата:
Дядя Миша писал:
Если рекурсия слишком глубокая, это на любом проце удар по производительности. Ну как цикл while( 1 ); загрузит проц на 100% независимо от его мощности.

То есть предпочтительнее таки отказаться от R_RecursiveWorldNode в пользу R_WorldMarkVisibleFaces?

Цитата:
Дядя Миша писал:
вас там еще и много

Из русских мб человек 10 наберется, из тех кого я знаю. А еще есть пару иностранцев.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 14:53:

Цитата:
SNMetamorph писал:
То есть предпочтительнее таки отказаться от R_RecursiveWorldNode в пользу R_WorldMarkVisibleFaces?

сложный вопрос на самом деле. Лучше всего не допускать раздутого дерева, но на халфовском формате это нереально. Я писал симплификатор дерева для NT, он очень хорошо справлялся, но для меня это давно уже неактуально.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-02-2021 в 17:05:

Теперь в планах реализовать батчинг брашевых энтитей. Что там вообще можно батчить у них? По идее у каждой энтити может быть какой-то свой рендермод, будет ли это препятствием?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 17:26:

Естественно. Стейт же меняется.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-02-2021 в 17:32:

Цитата:
Дядя Миша писал:
Естественно. Стейт же меняется.

Что там еще помимо рендермода такого поганого имеется?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-02-2021 в 20:12:

какого?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 25-02-2021 в 17:36:

C++ Source Code:
1
/*
2
=================
3
R_BmodelSurfaceCompare
4
 
5
compare translucent surfaces
6
=================
7
*/
8
static int R_BmodelSurfaceCompare( const gl_bmodelface_t *a, const gl_bmodelface_t *b )
9
{
10
  msurface_t	*surf1, *surf2;
11
 
12
  surf1 = (msurface_t *)a->surface;
13
  surf2 = (msurface_t *)b->surface;
14
 
15
  Vector org1 = RI->currententity->origin + surf1->info->origin;
16
  Vector org2 = RI->currententity->origin + surf2->info->origin;
17
 
18
  // compare by plane dists
19
  float len1 = DotProduct( org1, RI->vforward ) - RI->viewplanedist;
20
  float len2 = DotProduct( org2, RI->vforward ) - RI->viewplanedist;
21
 
22
  if( len1 > len2 )
23
    return -1;
24
  if( len1 < len2 )
25
    return 1;
26
 
27
  return 0;
28
}

Не могу понять, по чему тут идет критерий сортировки?
То есть после сортировки, сначала в массиве идут сурфейсы которые дальше всего от камеры, а в конце уже те, что ближе?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Crystallize 25-02-2021 в 18:50:

Так и делается вроде, back to front.


Отправлено SNMetamorph 25-02-2021 в 18:53:

Цитата:
Crystallize писал:
Так и делается вроде, back to front.

Для обьектов на сцене да, но для самих прозрачных брашей я не пойму зачем это делать. Ведь там и не нужно чтобы было видно дальние сурфейсы сквозь ближние.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 25-02-2021 в 20:18:

Цитата:
SNMetamorph писал:
Ведь там и не нужно чтобы было видно дальние сурфейсы сквозь ближние.

Почему не нужно?


Отправлено SNMetamorph 26-02-2021 в 12:58:

Цитата:
ncuxonaT писал:
Почему не нужно?

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 26-02-2021 в 19:02:

SNMetamorph бэкфейсы не рендерятся же


Отправлено SNMetamorph 27-02-2021 в 08:15:

Цитата:
ncuxonaT писал:
Почему не нужно?

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 27-02-2021 в 09:35:

Стёкла нельзя рисовать со включённым depth-write, иначе мы не увидим за ближним стеклом ничего - там всё будет затёрто.
Точнее говоря - можно и даже нужно, я в параное именно так и делаю, предварительно сохранив содержимое экрана в отдельную текстуру, но это гораздо сложнее чем аппаратный блендинг. Но и возможностей больше.
Но без полноценного OIT это нормально работает только на плоскостях.

Добавлено 27-02-2021 в 11:41:

В ксаш-моде тоже всё готово к такому стилю отрисовки стёкол, но я его не заюзал.

Добавлено 27-02-2021 в 12:35:

SNMetamorph ты вообще представляешь как осуществляется рендеринг со включенной записью в буффер глубины?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 27-02-2021 в 10:15:

Цитата:
Дядя Миша писал:
ты вообще представляешь как осуществляется рендеринг со включенной записью в буффер глубины?

Да, все, понял теперь.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 28-02-2021 в 11:35:

В общем, реализовал как-то батчинг непрозрачных брашевых энтитей, все вроде рисуется, но есть проблема в том, что теперь начал неправильно работать куллинг: модели пропадают до того, как исчезнут из поля видимости, то есть когда я стою на огромной браш-модельной скале, и смотрю себе под ноги, то она просто исчезает. Еще в коде видел заметку про TODO store cull type. Не понял что к чему. Что такое может быть с куллингом тут?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 28-02-2021 в 14:07:

Тебе виднее, значит так реализовал.

Добавлено 28-02-2021 в 17:07:

А на TODO не смотри, оно ни на что не влияет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-03-2021 в 10:41:

Почему в последнем ксаше выпилена система статик энтитей?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-03-2021 в 13:13:

Почему ты так решил?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-03-2021 в 17:06:

Цитата:
Дядя Миша писал:
Почему ты так решил?

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-03-2021 в 18:10:

Не кладутся, потому что в этом больше нет необходимости.
Статики наоборот были серъезно переработаны и улучшены.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-03-2021 в 10:28:

Цитата:
Дядя Миша писал:
Не кладутся, потому что в этом больше нет необходимости.
Статики наоборот были серъезно переработаны и улучшены.

Только в ксаше или в ксашмоде тоже? Как оно теперь в целом вообще работает?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-03-2021 в 11:52:

В целом система стала неявной, растворилась в архитектуре.

Добавлено 09-03-2021 в 14:52:

Цитата:
SNMetamorph писал:
Только в ксаше или в ксашмоде тоже?

везде, да.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-03-2021 в 13:53:

В чем суть статик энтитей вообще была? Чтобы их всех объединять вместе с сурфами мира и вместе рендерить? Или это не единственная функция? В чем отличие текущей реализации от предыдущей?

Добавлено 09-03-2021 в 17:53:

Цитата:
SNMetamorph писал:
Чтобы их всех объединять вместе с сурфами мира и вместе рендерить?

Вот это в данном случае как раз для меня самый важный контекст. В ксашмоде я накостылил подобное, но до того как я это сделал каждая брашэнтити рисовалась вообще отдельно вне зависимости от чего-либо.
https://github.com/SNMetamorph/xash...0d7083d0a6321f4

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-03-2021 в 15:03:

Цитата:
SNMetamorph писал:
В чем суть статик энтитей вообще была?

клиентские траффик не жрут. Но они несолидные.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 14-03-2021 в 08:37:

Как на стороне клиента получить количество энтитей?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 14-03-2021 в 10:00:

Никак. А зачем?

Добавлено 14-03-2021 в 13:00:

А где можно почитать отчёт о проделанной работе?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 14-03-2021 в 15:11:

Цитата:
Дядя Миша писал:
А где можно почитать отчёт о проделанной работе?

Пока что только если коммиты на гитхабе поглядеть, но если коротко, то я починил батчинг сурфейсов мира (оно там все было реализовано, но где-то что-то не использовалось) и теперь пытаюсь статические энтити забатчить, после чего я буду прикручивать bindless текстуры, что должно нифиговый прирост дать на железках >2013 года. А как с этим покончу, то буду добавлять графические фичи из П2, скорее всего. А еще надо бы пофиксить баги, которые мне в issues на гитхабе нарепортили. Тоже как-нибудь доберусь.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 14-03-2021 в 16:12:

прирост производительноти получил то?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-03-2021 в 07:24:

Цитата:
Дядя Миша писал:
прирост производительноти получил то?

Конечно, у товарища на интеловской встройке в среднем в 2-3 раза фпс возрос на картах больших. Но это пока еще совсем не предел, надо еще дожимать.
Ещё у меня была мысль сделать квар на отключение проверки по BSP, чтобы не было никакого обхода дерева каждый кадр и все тупо рендерилось целиком, но я не знаю пока как это сделать, вроде бы один R_RecursiveWorldNodes обойти и RI->visbytes забить единичными битами недостаточно, что-то там есть ещё.
Ведь помнится я что-то связанное экспериментально закомменчивал, в итоге фпс подрос, не то что бы сильно, но и не слабо. То есть обход дерева замедляет рендеринг, но пока что это не самый весомый фактор. Я думаю обход дерева делает плохо на железках где CPU слабый, и там лучше всё просто рендерить целиком.

Добавлено 15-03-2021 в 11:21:

И ещё, я потом оптимизирую отрисовку текста на экране, а то пока что оно КАЖДУЮ букву рендерит через glBegin/glEnd, возможно даже всё получится уместить в 1 вызов отрисовки.

Добавлено 15-03-2021 в 11:24:

Да и по хорошему то вообще надо бы от legacy-GL целиком избавиться, чтобы RenderDoc мог работать.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-03-2021 в 14:21:

Цитата:
SNMetamorph писал:
Конечно, у товарища на интеловской встройке в среднем в 2-3 раза фпс возрос на картах больших

ну так где исследования? Что делал, к чему пришёл, скриншоты опять же.

Цитата:
SNMetamorph писал:
чтобы не было никакого обхода дерева каждый кадр

там этого и так нету. Там по дефолту перебор лифов.

Цитата:
SNMetamorph писал:
И ещё, я потом оптимизирую отрисовку текста на экране, а то пока что оно КАЖДУЮ букву рендерит через glBegin/glEnd, возможно даже всё получится уместить в 1 вызов отрисовки.

Это влияет только когда консоль выдвигаешь. Да и не сказать, чтобы сильно.
Буквы-то мелкие. И их на экране в среднем, ну пусть 2000. Это ни о чём вообще.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-03-2021 в 16:34:

Цитата:
Дядя Миша писал:
ну так где исследования? Что делал, к чему пришёл, скриншоты опять же.

Это всё есть, но не вижу смысла в данный момент выкладывать т.к. я еще не закончил дела с батчингом. Когда закончу, стопочкой уже всё выложу и распишу.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-03-2021 в 17:38:

Хорошо, будем ждать

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Crystallize 15-03-2021 в 17:43:

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


Отправлено Дядя Миша 15-03-2021 в 18:33:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-03-2021 в 18:53:

Цитата:
SNMetamorph писал:
Это всё есть, но не вижу смысла в данный момент выкладывать т.к. я еще не закончил дела с батчингом. Когда закончу, стопочкой уже всё выложу и распишу.

В общем-то там немного совсем осталось, остается доделать только bindless textures и отключение обхода дерева. И можно будет переносить графоний и материалы из П2.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 18-03-2021 в 07:21:

За вчера запилил статик энтити и их батчинг, прикрутил более расширенную статистику в r_speeds и пофиксил несколько багов.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено KiQ 19-03-2021 в 15:46:

Цитата:
SNMetamorph писал:
оно КАЖДУЮ букву рендерит через glBegin/glEnd

Зачем каждую? множественные квады спокойно рисуются внутри одного glBegin/glEnd, вот у меня в движке например метод рисования текста

C++ Source Code:
1
public void onDraw() {
2
  if (text == null) return;
3
  if (text.length() <= 0) return;
4
 
5
  float tmp_x = x - 1;
6
  float tmp_y = y - font.ascent;
7
 
8
  GL11.glBindTexture(GL11.GL_TEXTURE_2D, font.getFontTexture().id);
9
  GL11.glColor4f(color.r, color.g, color.b, color.a);
10
 
11
  GL11.glBegin(GL11.GL_QUADS);
12
  {
13
    for (char c : text.toCharArray()) {
14
      float w = font.charWidth(c);
15
      float h = font.getHeight();
16
 
17
      float u = 1.0F / font.getFontTexture().width * font.getCharX(c);
18
      float v = 0f;
19
      float u2 = u + 1.0F / font.getFontTexture().width * w;
20
      float v2 = 1f;
21
 
22
      GL11.glTexCoord2f(u, v);
23
      GL11.glVertex2f(tmp_x, tmp_y);
24
 
25
      GL11.glTexCoord2f(u2, v);
26
      GL11.glVertex2f(tmp_x + w, tmp_y);
27
 
28
      GL11.glTexCoord2f(u2, v2);
29
      GL11.glVertex2f(tmp_x + w, tmp_y + h);
30
 
31
      GL11.glTexCoord2f(u, v2);
32
      GL11.glVertex2f(tmp_x, tmp_y + h);
33
 
34
      tmp_x += w;
35
    }
36
  }
37
  GL11.glEnd();
38
 
39
  GL11.glColor4f(1f, 1f, 1f, 1f);
40
  GL11.glBindTexture(GL11.GL_TEXTURE_2D, 0);
41
}


Надо бы мне атласы шрифтов замутить для ускорения

Добавлено 19-03-2021 в 18:46:

Кстати, пробовал переводить на glDrawArrays, никакого прироста не получил

__________________
-Brain is dead-


Отправлено Дядя Миша 19-03-2021 в 15:54:

Цитата:
KiQ писал:
множественные квады спокойно рисуются внутри одного glBegin/glEnd

ну да, я про это и говорил.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 19-03-2021 в 16:50:

KiQ может, там рендер текста сделан на дисплейных списках по старому туториалу NeHe. На каждую букву свой glBegin/glEnd и сдвиг курсора через glTranslatef.


Отправлено SNMetamorph 21-03-2021 в 18:31:

Цитата:
Дядя Миша писал:
Хы. Mod_ResortFaces должен вызываться каждый кадр. Там недоделато.

А почему каждый кадр? Как оно по идее должно было работать?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-03-2021 в 19:27:

SNMetamorph оно ловит изменения кваров. Но сортировка выполняется 1 раз после смены квара.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-04-2021 в 19:00:

Цитата:
Дядя Миша писал:
SNMetamorph оно ловит изменения кваров. Но сортировка выполняется 1 раз после смены квара.

Ага, сегодня вот увидел и пофиксил. Там еще была такая проблема что tr.params_changed не обнулялся в R_ClearScene и в итоге сортировка каждый кадр выполнялась, но теперь в функции R_ClearScene если tr.params_changed трушный, то снова происходит сортировка. Вроде бы нормально работает.

Добавлено 08-04-2021 в 22:59:

Еще один фактор всплыл, который влияет на производительность рендеринга: на 74 отрисовки энтить приходится ~280 переключений шейдера, что конечно дофига. Я вручную проверил, что же там так чередуется, в итоге выяснилось что там есть 3 разных шейдера BmodelSolid, один без лайтстилей, второй с лайтстилем 0, и третий с лайтстилями 0 и 1.
Может быть как-то можно сделать чтоб шейдер был либо без лайтстилей, либо со всеми лайтстилями? А то в текущей реализации немало лишних переключений происходит.

Добавлено 08-04-2021 в 23:00:

Вообще по мере того как я что-то допиливаю, еще и новая информация раскрывается и снова приходится что-то допиливать. Замкнутый круг какой-та.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-04-2021 в 19:02:

Цитата:
SNMetamorph писал:
Может быть как-то можно сделать чтоб шейдер был либо без лайтстилей, либо со всеми лайтстилями?

Попробуй, но так ИМХО еще тормознее. У тебя сортировка неправильная, не должно быть столько переключений.

Цитата:
SNMetamorph писал:
Вообще по мере того как я что-то допиливаю, еще и новая информация раскрывается и снова приходится что-то допиливать

Я сумел вовремя остановиться, да.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-04-2021 в 19:11:

Цитата:
Дядя Миша писал:
У тебя сортировка неправильная, не должно быть столько переключений.

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

Добавлено 08-04-2021 в 23:06:

Ну вообще, я пробовал делать сортировку сурфейсов именно каждой энтити, но это не оказало какого-либо влияния.

Добавлено 08-04-2021 в 23:07:

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

Добавлено 08-04-2021 в 23:11:

Цитата:
SNMetamorph писал:
А у непрозрачных каждая энтити рендерится отдельно, сбатчить их не получается из-за того что у каждой своя матрица трансформации.

А что если все матрицы засунуть в uniform buffer object

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-04-2021 в 20:43:

Цитата:
SNMetamorph писал:
А у непрозрачных каждая энтити рендерится отдельно

Ты походу не понял. Зачем переключать шейдер при смене энтити?
Вот у тебя 100 энтить и на всех нулевой лайтстиль. Ты что шйдер каждый раз обнуляешь и ставишь заново?

Или ты хочешь сказать, что у каждой энтити используются по нескольку шейдеров?

Цитата:
SNMetamorph писал:
А вообще, конкретно мир сейчас довольно шустро рендерится

сколько полигонов в кадре, сколько FPS, какая видеокарта.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-04-2021 в 06:21:

Цитата:
Дядя Миша писал:

Ты походу не понял. Зачем переключать шейдер при смене энтити?
Вот у тебя 100 энтить и на всех нулевой лайтстиль. Ты что шйдер каждый раз обнуляешь и ставишь заново?

Ну там у каждой энтити все ее сурфейсы отправляются в список tr.draw_surfaces который потом рисуется в R_DrawBrushList. Это так еще в ванильном ксашмоде работало и пока никто это не трогал. Ну да, получается что шейдер там переключаетмя с нуля каждый раз.


Отправлено KiQ 09-04-2021 в 07:12:

SNMetamorph сделай проверку на соответствие текущего шейдера и шейдера эньтьи и переключай только если current_shader != entity_shader. Ну или просто сделать сортировку ещё и по шейдерам

__________________
-Brain is dead-


Отправлено Дядя Миша 09-04-2021 в 08:25:

А. В конце R_DrawBrushList будет вызов

C++ Source Code:
1
GL_SelectTexture( glConfig.max_texture_units - 1 ); // force to cleanup all the units
2
GL_CleanUpTextureUnits( 0 );
3
pglBindVertexArray( GL_FALSE );
4
GL_BindShader( NULL );
5
GL_Cull( GL_FRONT );

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

Добавлено 09-04-2021 в 11:25:

Цитата:
KiQ писал:
сделай проверку на соответствие текущего шейдера и шейдера эньтьи и переключай только если current_shader != entity_shader. Ну или просто сделать сортировку ещё и по шейдерам

естественно там всё это есть.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-04-2021 в 17:29:

Цитата:
Дядя Миша писал:
А. В конце R_DrawBrushList будет вызов

C++ Source Code:
1
GL_SelectTexture( glConfig.max_texture_units - 1 ); // force to cleanup all the units
2
GL_CleanUpTextureUnits( 0 );
3
pglBindVertexArray( GL_FALSE );
4
GL_BindShader( NULL );
5
GL_Cull( GL_FRONT );

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

Добавлено 09-04-2021 в 11:25:


естественно там всё это есть.

То есть этот весь сброс стейтов можно убрать из функции R_DrawBrushList и сунуть в место которое находится непосредственно после рендеринга энтитей?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-04-2021 в 19:01:

Можно, но надо тестить. У меня не было на это уже времени.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено nemyax 11-04-2021 в 16:49:

SNMetamorph
Вот тут репа PrimeXT?
https://github.com/SNMetamorph/xashxt-fwgs


Отправлено Дядя Миша 11-04-2021 в 17:50:

Опять CR\LF покоцали, ну сами и сравнивайте.

Добавлено 11-04-2021 в 20:46:

C++ Source Code:
1
static void R_AppendSurface(mextrasurf_t *esurf)
2
{
3
  for (int vert = 0; vert < esurf->numverts - 2; vert++)
4
  {
5
    ASSERT(numTempElems < (MAX_MAP_ELEMS - 3));
6
    tempElems[numTempElems++] = esurf->firstvertex;
7
    tempElems[numTempElems++] = esurf->firstvertex + vert + 1;
8
    tempElems[numTempElems++] = esurf->firstvertex + vert + 2;
9
  }
10
}

Хоть бы спросил, почему там макрос, а не функция.

Добавлено 11-04-2021 в 20:50:

А с травой што?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 14-04-2021 в 19:19:

Цитата:
Дядя Миша писал:
А с травой што?

Поскольку я обход BSP со сбором всех видимых сурфейсов сделал опциональным, теперь надо еще как-то под это адаптировать код который рисует динлайты и траву, а еще декали. Пока не добрался до этого, но это как раз и буду в первую очередь делать.
Цитата:

Дядя Миша писал:
Хоть бы спросил, почему там макрос, а не функция.

Ну наверное чтоб лишние вызовы не делать? Хотя хз насколько это вообще на производительность влияет.

Добавлено 14-04-2021 в 23:19:

Цитата:
nemyax писал:
Вот тут репа PrimeXT?
https://github.com/SNMetamorph/xashxt-fwgs

Пока да, но потом перенесу в https://github.com/SNMetamorph/PrimeXT

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-04-2021 в 05:48:

Цитата:
SNMetamorph писал:
Хотя хз насколько это вообще на производительность влияет.

Функция - лишние движения по стеку.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-04-2021 в 06:44:

Цитата:
Дядя Миша писал:
Функция - лишние движения по стеку.

Тогда наверно лучше вместо макроса сделать инлайновую функцию

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 15-04-2021 в 07:33:

Цитата:
SNMetamorph писал:
Тогда наверно лучше вместо макроса сделать инлайновую функцию

Нету гарантии, что заинлайнится.


Отправлено Дядя Миша 15-04-2021 в 08:14:

Цитата:
nemyax писал:
Нету гарантии, что заинлайнится.

Гарантия есть, но я не помню при каких условиях. Макрос надёжнее в этом плане, хоть и выглядит не так красиво.

Добавлено 15-04-2021 в 11:14:

Да и вообще, если макрос оперирует глобальными переменными, то пофигу. Вот что я не люблю, так это локальные макросы, для отдельно взятой функции, вот это реальное зло. Там по смыслу лмябды так и напрашиваются.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-04-2021 в 14:28:

Цитата:
nemyax писал:
Нету гарантии, что заинлайнится.

Для этого есть forceinline или что-то такое

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-04-2021 в 15:09:

Цитата:
SNMetamorph писал:
Для этого есть forceinline

они deprecated

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-04-2021 в 17:12:

Сложно. Ну вот пофиксил я длайты вместе с декалями, а теперь пришел черёд травы. Проблема в том, что там нужно снова пройтись по всем сурфейсам (не только по видимым, как я понял) и для каждого применить R_AddGrassToChain. И так каждый кадр, как-то оно медленно будет, мне кажется

Добавлено 15-04-2021 в 21:12:

Цитата:
SNMetamorph писал:
Сложно. Ну вот пофиксил я длайты вместе с декалями, а теперь пришел черёд травы. Проблема в том, что там нужно снова пройтись по всем сурфейсам (не только по видимым, как я понял) и для каждого применить R_AddGrassToChain. И так каждый кадр, как-то оно медленно будет, мне кажется

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-04-2021 в 18:08:

Цитата:
SNMetamorph писал:
Проблема в том, что там нужно снова пройтись по всем сурфейсам (не только по видимым, как я понял)

нет, необязательно. Достаточно по тем сурфейсам, которые видны из лифов, попавших в кадр. Но может случится ситуация, когда сурфейс не виден, а трава на нём видна. На этот случай можно увелчить bbox лифа. Собсно я это уже сделал.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 17-04-2021 в 19:55:

Цитата:
Дядя Миша писал:
Достаточно по тем сурфейсам, которые видны из лифов, попавших в кадр. Но может случится ситуация, когда сурфейс не виден, а трава на нём видна. На этот случай можно увелчить bbox лифа.

Я там вообще сделал возможность использовать PVS-куллинг опционально. Т.е. рендер может бсп дерево не использовать вообще.

Добавлено 17-04-2021 в 23:55:

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 18-04-2021 в 07:36:

Ещё был баг с неимоверной кучей вызовов glEnable и glCullFace, эта пара вызывалась на каждый сурфейс при рендеринге мира в R_DrawWorldList
Был код такой:

C++ Source Code:
1
if( FBitSet( surf->flags, SURF_DRAWTURB ))
2
  GL_Cull(GL_NONE);
3
else
4
  GL_Cull(GL_FRONT);

Пофиксил вот так:
C++ Source Code:
1
int cull_type;
2
if( FBitSet( surf->flags, SURF_DRAWTURB ))
3
  cull_type = GL_NONE;
4
else
5
  cull_type = GL_FRONT;
6
 
7
if (cull_type != cached_cull_type) {
8
  GL_Cull(cull_type);
9
  cached_cull_type = cull_type;
10
}

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 18-04-2021 в 09:01:

Цитата:
SNMetamorph писал:
Ещё был баг с неимоверной кучей вызовов glEnable и glCullFace

Ну и что, fps вырос после исправления? И зачем было городить огород, если переменная для кэша имеется в самой функции GL_Cull.
Ты её прямо там бы мог задействовать, но я не стал, поскольку периодически наблюдается рассинхрон стейтов между движком и клиенткой, а у меня не было времени каждый случай разбирать от отдельности.

Добавлено 18-04-2021 в 12:01:

Ты вообще за какую малосущественную ерунду цепляешься, которая ни на что не влияет. Обещал же исследование, что удалось существенно повысить fps, с картинкоме и-тогдалие, до сих пор ждём.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 18-04-2021 в 09:39:

Цитата:
Дядя Миша писал:
Ты вообще за какую малосущественную ерунду цепляешься, которая ни на что не влияет.

Ну так это лишь одна из мелочей. Но это хоть и мелочь, но все таки оно тоже негативно влияло, навскидку в сложной сцене на карте hg_industrialzone у меня фпс с 124 поднялся до 139.

Добавлено 18-04-2021 в 13:38:

Цитата:
Дядя Миша писал:
Обещал же исследование, что удалось существенно повысить fps, с картинкоме и-тогдалие, до сих пор ждём.

Мне вот осталось разобраться с
Цитата:
SNMetamorph писал:
При каком условии R_AddGrassToChain должна возвращать true? Что-то не очень понятно, потому что она по факту для любого сюрфейса возвращает true, если хотя бы где-то на карте есть трава.

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

Добавлено 18-04-2021 в 13:39:

Цитата:
Дядя Миша писал:
А. В конце R_DrawBrushList будет вызов

C++ Source Code:
1
GL_SelectTexture( glConfig.max_texture_units - 1 ); // force to cleanup all the units
2
GL_CleanUpTextureUnits( 0 );
3
pglBindVertexArray( GL_FALSE );
4
GL_BindShader( NULL );
5
GL_Cull( GL_FRONT );

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

Добавлено 09-04-2021 в 11:25:


естественно там всё это есть.

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 18-04-2021 в 11:23:

Цитата:
SNMetamorph писал:
навскидку в сложной сцене на карте hg_industrialzone у меня фпс с 124 поднялся до 139.

Крайне сомнительно. Перепроверь еще раз.

Цитата:
SNMetamorph писал:
Что-то не очень понятно, потому что она по факту для любого сюрфейса возвращает true, если хотя бы где-то на карте есть трава.

ну ты как тестировал? И что непонятно из кода самой функции?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 18-04-2021 в 17:58:

Всё, разобрался, теперь R_AddGrassToChain работает правильно.
Вот такая небольшая доработка понадобилась.

C++ Source Code:
if (leaf || !es->grasscount)
  return false;

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 18-04-2021 в 18:29:

Ну что, фрустум-тест не отрабатывал?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 19-04-2021 в 11:12:

Цитата:
Дядя Миша писал:
Ну что, фрустум-тест не отрабатывал?

Да, с этим проблема была. Теперь все круто

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 19-04-2021 в 11:28:

Цитата:
SNMetamorph писал:
Да, с этим проблема была

а что именно? Я вообще замечал, что фрустум иногда глючит, но так и не понял в чём там дело.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 19-04-2021 в 16:21:

Цитата:
Дядя Миша писал:
а что именно? Я вообще замечал, что фрустум иногда глючит, но так и не понял в чём там дело.

В общем, из-за неправильной проверки в R_AddGrassToChain она возвращала true даже для тех сурфейсов на которой травы не было, из-за этого в итоге остальные проверки видимости просто пропускались.
https://github.com/SNMetamorph/xash...world.cpp#L3175

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 20-04-2021 в 17:08:

Какие прогрессивные методы можно утащить в паранойю, чтобы ускорить рендер брашей?


Отправлено Дядя Миша 21-04-2021 в 05:45:

ncuxonaT наоборот, рендер в XashXT это упрощённая копипаста рендера из паранои.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 21-04-2021 в 06:13:

Дядя Миша и тем не менее даже без энтитей в некоторых местах больше 1000 дипов, и фпс здорово проседает. Например, на складе со стеллажами, где нужно искать папки.


Отправлено Дядя Миша 21-04-2021 в 06:23:

Вот склад со стеллажами. Видеокарта GT640.
153 DIP, 40 переключений шейдера. Ванильная параноя 1.51

Где там тысяча?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 21-04-2021 в 13:49:

Цитата:
Дядя Миша писал:
наоборот, рендер в XashXT это упрощённая копипаста рендера из паранои.

А что там упрощено в сравнении с параноей?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-04-2021 в 13:52:

Цитата:
SNMetamorph писал:
А что там упрощено в сравнении с параноей?

ну как минимум - нет бампа. Можешь сам открыть и посравнивать.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 21-04-2021 в 14:19:

Дядя Миша хм, это интересно. На ванильной 150 дипов, на моем билде 1300, но фпс в обоих случаях проседает до 40, когда смотрю на стеллажи.

https://i.imgur.com/HqKAn2V.jpg https://i.imgur.com/G6pLYVz.jpg

А если смотрю на столы-стулья, то фпс 180 при сопоставимом поликаунте.
https://i.imgur.com/LRjxmMg.jpg https://i.imgur.com/816aRWB.jpg

Что не так со стеллажами? Я удалял паутину, эффекта ноль.


Отправлено Дядя Миша 21-04-2021 в 15:34:

r_scissor_glass_debug 1 и смотреть сколько там копий экрана.
Ну это как бы единственное, что может так сильно его ронять в зависимости от разрешения. Хотя и странно конечно, на стеллажах вроде нет стикол.

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

Добавлено 21-04-2021 в 18:34:

153 * 41 = 6273
1287 * 12 = 15444
т.е. в три раза больше. Там наверное волуметрик-лайты или что-то вроде этого? Но тогда почему бинды реже меняются? Шейдеры с dynamic branch?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 21-04-2021 в 16:49:

Цитата:
Дядя Миша писал:
Можешь сам открыть и посравнивать.

Поглядел, чет там совсем все наворочено. Даже грустно как-то что этого в ксашмоде нет

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-04-2021 в 17:47:

Цитата:
SNMetamorph писал:
Поглядел, чет там совсем все наворочено.

Это ты NT еще не видел.

Цитата:
SNMetamorph писал:
Даже грустно как-то что этого в ксашмоде нет

можно же рендер целиком скопировать.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 21-04-2021 в 17:48:

Цитата:
Дядя Миша писал:
r_scissor_glass_debug 1 и смотреть сколько там копий экрана.
Ну это как бы единственное, что может так сильно его ронять в зависимости от разрешения. Хотя и странно конечно, на стеллажах вроде нет стикол.

Стекла там есть, но копий экрана не больше, чем в коридоре с водой, а в коридоре фпс не падает. На стеллажах 4к вполи, это больше похоже на причину тормозов.
Цитата:
Дядя Миша писал:
И скажи мне пожалуйсто, как это у тебя так получилось, что переключений шейдеров - меньше, а дипов - больше?

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


Отправлено SNMetamorph 21-04-2021 в 18:31:

Цитата:
Дядя Миша писал:

можно же рендер целиком скопировать.

Не, наверно потом будет адово это все приводить в порядок, к тому же важно кроссплатформенность не запороть. Наверное лучше просто фичи поштучно добавлять, когда такая необходимость возникнет.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-04-2021 в 18:41:

Цитата:
ncuxonaT писал:
На стеллажах 4к вполи, это больше похоже на причину тормозов.

Настало время удивительных историй.

Цитата:
ncuxonaT писал:
Может, тоже из-за кубемап? На каждый брашевый фейс пересчитываются?

да, похоже на то.

Цитата:
SNMetamorph писал:
Наверное лучше просто фичи поштучно добавлять, когда такая необходимость возникнет.

там архитектура другая

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 21-04-2021 в 18:51:

Как я понимаю, у model_t брашевых энтити в surfaces лежит тот же список, что и список сурфейсов самого мира? И определенный диапазон сурфейсов конкретной модели в этом списке задается через firstmodelsurface и nummodelsurfaces?

Добавлено 21-04-2021 в 22:46:

И Mod_ResortFaces сортирует как раз сразу ВСЕ сурфейсы, которые и принадлежат и миру, и моделям?

Добавлено 21-04-2021 в 22:48:

Цитата:
Дядя Миша писал:
там архитектура другая

А как там динамическое освещение реализовано?

Добавлено 21-04-2021 в 22:51:

Да и в целом, какие различия между рендером P2 и ксашмода? Не потеряю ли я что-то из фич если параноевский рендер перенесу в ксашмод?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-04-2021 в 19:01:

Цитата:
SNMetamorph писал:
И Mod_ResortFaces сортирует как раз сразу ВСЕ сурфейсы, которые и принадлежат и миру, и моделям?

ну естественно.

Цитата:
SNMetamorph писал:
Не потеряю ли я что-то из фич если параноевский рендер перенесу в ксашмод?

оно по рендермодам не особо совместимо

Добавлено 21-04-2021 в 22:01:

Цитата:
SNMetamorph писал:
Да и в целом, какие различия между рендером P2 и ксашмода?

что ты хочешь услышать? Бери сорцы и сравнивай.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 21-04-2021 в 19:03:

Еще в P2 как я понял, есть deferred rendering, а в XashXT только forward?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 21-04-2021 в 19:20:

Да, верно. Впрочем DS экспериментальный, он без поддержки стёкол.

Добавлено 21-04-2021 в 22:20:

Лайтмапы на моделях есть еще

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 21-04-2021 в 20:13:

Дядя Миша отключил кубемапы у брашей, дипов стало мало, одной загадкой меньше.
А вот такое как можно объяснить - чуть поворачиваю камеру, мешей меньше, дипов меньше, зеркал/стекол в кадре не добавилось, но фпс почти в раза падает:
https://i.imgur.com/tJlnZg6.jpg https://i.imgur.com/xiok76b.jpg
На ванильной так же.


Отправлено Дядя Миша 22-04-2021 в 08:10:

У меня такое не воспроизводится. Нет падения в 2 раза.

Добавлено 22-04-2021 в 08:38:

FPS гуляет в пределах 358 - 423. При том что у меня там дохлая GT640 стоит, правда разрешение экрана 1024х768. Ну попробуй в окошке погонять, посравнивай при разных разрешениях.

Добавлено 22-04-2021 в 11:10:

В Блоге Разработчика я подробно и обстоятельно рассказывал почему рендеринг брашей в том виде, в котором они представлены в кушных форматах - это узкое место, которое никогда не будет отличаться хорошей производительностью. Надо менять вообще весь формат полностью, как я это сделал в NT, иначе ничего не получится.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-04-2021 в 09:47:

Цитата:
Дядя Миша писал:
рендеринг брашей в том виде, в котором они представлены в кушных форматах - это узкое место, которое никогда не будет отличаться хорошей производительностью

Так можно же просто не юзать дерево? Или другого вида (более подходящего для рендеринга) дерево построить из исходного. А то что там много разных текстур или прочих переменных, это хотя бы отчасти можно через bindless textures и юниформ буферы же порешать насколько я знаю.
Ну, в общем, точно могу сказать что это не полная безнадёга.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-04-2021 в 10:03:

Цитата:
SNMetamorph писал:
Так можно же просто не юзать дерево?

Дерево тут непричём абсолютно.
Сам формат хранения геометрии не годится для быстрой отрисовки.
Там по хорошему надо весь уровень сначала загнать в стрип-геометрию, а потом порубить на визуальные блоки, размерами 256х256 юнитов, для эффективной работы фрустума. И сделать большие толстые лифы, размерами примерно как эти секции. Вот тогда это будет действительно быстро. У меня грасс_тест под NT выдаёт около 2000 фпс, а в параное, как ни старайся, выше четырёхсот не вырастет.

Цитата:
SNMetamorph писал:
хотя бы отчасти можно через bindless textures и юниформ буферы же порешать насколько я знаю.

Откуда в тебе сидит эта уверенность, что биндлесс текстуры вообще хоть на что-то влияют? Ты где-то статью такую прочитал или что?
ну дай хоть ссылку, я тоже почитаю.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-04-2021 в 11:34:

А в п2 есть декали на студиомоделях?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Lev 22-04-2021 в 11:42:

SNMetamorph Да, есть, на енв_статик и на персах от пуль тоже есть.


Отправлено Дядя Миша 22-04-2021 в 14:22:

В параное аппаратно-ускоренные декали на студиомоделях, трансформация на видеокарте, в отличие от ксаш-модовых.

Добавлено 22-04-2021 в 17:19:

Вообще в P2 эти студиодекали оч. сильно переработаны.

Добавлено 22-04-2021 в 17:22:

И еще одна фишка параноевских декалей - они учитывают скейл статик-меша. Потому что в противном случае получается, что размер декали зависит от скейла меша, в ксаш-моде это не учитывается. А в параное есть компенсатор. Ну и плюс у студиодекалей равные возможности с брашевыми, а так же совпадают размеры.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-04-2021 в 14:44:

Сейчас прикручиваю потихоньку рендер паранои к ксашмоду. Небыстрое дело конечно.
А еще, я могу ведь bspfile.h из паранои в ксашмод перетащить? Ничего не должно сломаться? Там ведь вроде форматы разные.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 22-04-2021 в 14:59:

Формат одинаковый, ксаш-мод не все его возможности использует просто.

Добавлено 22-04-2021 в 17:58:

В параное нет каких-то фишек из обычной халфы\либо они просто не будут нормально работать. Что-то связанное с рендер-модами кажется. Ну еще нет порталов и мониторов, но это легко доделать при помощи копипасты зеркал, например.
Декали опять же. У паранои своя система, с халфовскими декалями несовместимая. Много таких мелочей.
К тому жы ксаш-мод менее требователен к видеокарте и её расширениям.

Добавлено 22-04-2021 в 17:59:

SNMetamorph так ты не ответил на вопрос по поводу биндлесс-текстур.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 22-04-2021 в 15:11:

Цитата:
Дядя Миша писал:
так ты не ответил на вопрос по поводу биндлесс-текстур.

Ну в халфе же так исторически сложилось что для мира текстур куча и она маленькие, из-за чего нельзя всё в один проход отрендерить и приходится биндить другие текстуры и снова рендерить геометрию уже отдельным DIPом. А в современных играх обычно делают что одна текстура на один меш, т.е. там не куча маленьких, а одна большая, и это более оптимально с точки зрения рендеринга. Ну при помощи биндлесс текстур можно как раз лишних переключений избежать и тем самым сократить количество DIPов.
Когда я ковырялся в ксашмоде с рендерингом мира, переключения текстур как раз и были основным тормозом в рендеринге.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Crystallize 22-04-2021 в 16:47:

SNMetamorph Если ты пофиксил ошибки в дефолтном рендере ксаша, почему бы не сделать тутор?


Отправлено Дядя Миша 22-04-2021 в 17:53:

Цитата:
SNMetamorph писал:
А в современных играх обычно делают что одна текстура на один меш, т.е. там не куча маленьких, а одна большая, и это более оптимально с точки зрения рендеринга

Глупости какие. В сталкере что на уровень одна текстура приходится? Их там штук 100 и такие же проходы. Да и в любой другой игре точно так же.
К тому же переключение текстур уже давным-давно практически бесплатное, основная стоимость уходит на смену шейдера.

Цитата:
SNMetamorph писал:
переключения текстур как раз и были основным тормозом в рендеринге.

ну я не вижу исследований на эту тему, только личные впечатления, непонятно на чём основанные.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Casperx69x 23-04-2021 в 08:21:

Наверное оффтоп. Но в ксаше мне не хватает смеси паранойи и ксаша. Я уже год пилю мод свой на XashXT и из фишек которых не хватает,а а ума и времени скрестить не хватает:

Кубемапы
Кастомные декали
Бамп
Упрощенную систему добавления новых стволов
Если бы можно было бы сделать, отдельно руки от модели пушки, как в сорсе, было бы топ просто
Читабельные записки как в паранойе
Субтитры
Шрифты вместо картиночки в меню, да и в целом локализацию упростить для пунктов от сабов до текста меню
Система материалов на моделях

В целом если билд будет в этом году,без вырезания фишек и ентить из ксаша без оглядки перейду на PrimeXT и готов так сказать стать тестером


Отправлено Дядя Миша 23-04-2021 в 10:58:

Цитата:
Casperx69x писал:
Но в ксаше мне не хватает смеси паранойи и ксаша

Я специально их так сделал, чтобы в одном не было другого. Чтобы замотивировать вас на дальнейшее творчество

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ku2zoff 23-04-2021 в 12:30:

Цитата:
Casperx69x писал:
Упрощенную систему добавления новых стволов

Не вижу в этом абсолютно никакой проблемы. Сорцы открытые, можно добавлять по-старинке.
Цитата:
Casperx69x писал:
Читабельные записки как в паранойе

В моде Cthulhu такие записки сделаны на VGUI. Кодится довольно просто. Мапперский вариант без кодинга - trigger_camera + комната с увеличенным брашем записки. Насчёт читаемых записок и мониторов, в которые можно смотреть, я вам кое-что покажу в скором времени. Не без кодинга, конечно.
Цитата:
Casperx69x писал:
Субтитры

Есть опенсорсный мод с субтитрами под первую халфу. Там очень неплохо всё сделано. Я планирую себе дёрнуть оттуда код субтитров и недвижковых текстовых сообщений, чтобы на всех разрешениях экрана интерфейс был одинакового размера. Но там на VGUI, в п2 не знаю как сделано, не смотрел сорцы.


Отправлено Aynekko 23-04-2021 в 12:56:

Цитата:
Ku2zoff писал:
Мапперский вариант без кодинга - trigger_camera + комната с увеличенным брашем записки.

У меня такое было изначальной идеей, но у этого метода много проблем. Можно задать камере время, тогда игроку придется ждать - и нельзя угудать, успеет игрок прочитать или нет. Кто-то быстро и будет сидеть ждать, а кто-то не успеет и придется опять жать. Раздражает. Можно задать toggle на юз и freeze player, но тогда другая проблема - игрок может крутить мышкой и кнопка может пропасть из поля зрения. Ее придется искать "на ощупь", иначе останешься в камере навсегда. У себя я сделал записки спрайтом разрешением 500х500, ну и скейлом 0.2 или где-то там. Маленькая и читается хорошо + всегда повернута к игроку.
Минус всего этого в том, что нет никакого журнала, чтобы их коллекционировать и читать в любой момент времени.

__________________
Мой мод на Xash


Отправлено Дядя Миша 23-04-2021 в 13:52:

Цитата:
Casperx69x писал:
Упрощенную систему добавления новых стволов

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

Цитата:
Casperx69x писал:
сли бы можно было бы сделать, отдельно руки от модели пушки, как в сорсе, было бы топ просто

так сделано уже. В параное кокрас-таки. Я совсем забыл вам об этом рассказать.
C++ Source Code:
1
WeaponData
2
{
3
  "viewmodel"	"models/view_glock.mdl"	// path to viewmodel
4
  "playermodel"	"models/world_glock.mdl" 	// path to world model

Вон где viewmodel, теперь еще появился параметр "handmodel" специально для модельки рук. Правда там условие, чтобы у них совпадали шкилеты.
Точнее как. У модельки пушки есть все анимации и скелет.
У модельки рук достаточно лишь скелета как у модельки пушки.
То есть надо сделать кучу пушек с одинаковыми скелетами + одни руки.
Этот механизм сочетается и с классическими моделями тоже. Можно использовать и те и эти одновременно.

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

Добавлено 23-04-2021 в 16:52:

Aynekko ну ты как маленький ей-богу.
Делай через func_monitor без текстуры экрана. Поюзаешь - откроется полная камера с фризом игрока и без лимита на время. Нажмёшь пробел - выход из чтения записки. А камера нацелена будет на эту стену с запиской.
Делов -то.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено nemyax 23-04-2021 в 13:57:

Цитата:
Дядя Миша писал:
Делай через func_monitor без текстуры экрана. Поюзаешь - откроется полная камера с фризом игрока и без лимита на время. Нажмёшь пробел - выход из чтения записки. А камера нацелена будет на эту стену с запиской.

Если при чтении записки сохраниться, всё корректно отработает?


Отправлено Дядя Миша 23-04-2021 в 14:12:

nemyax ну естественно. В ксаше вообще первоочередное внимание уделено сейв-рестору во всяких стрёмных ситуациях.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 23-04-2021 в 14:41:

Цитата:
Дядя Миша писал:
nemyax ну естественно. В ксаше вообще первоочередное внимание уделено сейв-рестору во всяких стрёмных ситуациях.

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Aynekko 23-04-2021 в 14:55:

Цитата:
Дядя Миша писал:
Делай через func_monitor без текстуры экрана. Поюзаешь - откроется полная камера с фризом игрока и без лимита на время. Нажмёшь пробел - выход из чтения записки. А камера нацелена будет на эту стену с запиской.

И откуда я должен был это знать, интересно
Кстати, пока этот монитор поставишь, тоже черт ногу сломит. Текстура должна быть повернута на 180 и на одной из осей отрицательный скейл нужно ставить. Об этом вроде тоже никто нигде не говорил.
Цитата:
Дядя Миша писал:
В ксаше вообще первоочередное внимание уделено сейв-рестору во всяких стрёмных ситуациях.

Действительно, очень много вещей пофикшено, но пара мелочей остались в ксаш-моде - к примеру у game_player_equip сейва нет, пришлось дописывать.

__________________
Мой мод на Xash


Отправлено Дядя Миша 23-04-2021 в 15:02:

Цитата:
Aynekko писал:
game_player_equip сейва нет

так этож халфовская мультиплеерная энтить, его там отродясь не было.

Цитата:
Aynekko писал:
И откуда я должен был это знать, интересно

Ну. Из доков Почему-то доктор Тресни мигом эту фишку просёк еще 8 лет назад и делал записки без моей подсказки именно так.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Aynekko 23-04-2021 в 15:11:

Цитата:
Дядя Миша писал:
так этож халфовская мультиплеерная энтить, его там отродясь не было.

У него есть флаг "юз онли" и он видимо со времен спирита разрешен в сингле, там в коде даже коммент об этом был. Но сейв сделать забыли, видимо.

__________________
Мой мод на Xash


Отправлено SNMetamorph 23-04-2021 в 18:47:

Второй день прикручиваю рендер к ксашмоду. Всё конечно туго идет, ибо там в коде просто настоящий header hell

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 23-04-2021 в 18:59:

Я када новый файл создаю - просто копипастю в него инклуды из соседнего.
Вот и получается header hell. Надо бы конечно по уму это отревизить, но где же взять столько времени.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Дядя Миша 24-04-2021 в 08:26:

Ладно, нехотите проводить исследования, хотите верить в Bindless текстуры, я вам сам дам два скриншота.

Первый - это халфовский BSP. Не точно этот же формат, но близкий к нему, фейсы хранятся в виде точек и текстурных матриц, индексация строится налиту при загрузке.


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


Достаточно наглядная разница в производительности? В обоих случаях в кадр попадает вся карта. Только вот у оригинала - 14 тысяч сурфейсов, а в новом формате - 85 сурфейсов. Даже просто пропустить через фрустум 14 тысяч фейсов - это уже серъезная нагрузка. Их надо объединять в пространстве, а делать это при загрузке довольно долго и неудобно, если менять формат, это вообще всё посыплется. Т.е. задача практически не решаемая малыми усилиями. Или решаемая, но костыльно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-07-2021 в 10:03:

Цитата:
SNMetamorph писал:
Когда я ковырялся в ксашмоде с рендерингом мира, переключения текстур как раз и были основным тормозом в рендеринге.

Точнее, там не в переключениях текстур дело, а в том, что из-за того что их приходится переключать, то что могло отрисоватья бы за 5-10 DIPов, в итоге отрисовывается за 200+ DIPов, при этом, чем больше текстур на карте, тем больше вызовов получается.


Отправлено Дядя Миша 09-07-2021 в 11:02:

C DIP-ами давно уже непростые отношения. Боресков нас уверял в нулевых, что DIPы дороги только в DirectX, а в OpenGL они практически бесплатные, халявные итогдалие. Ну надо сказать, что года с 2009-го эта ситуация стала меняться к худшему. Возможно стоимость вызова для GL и ниже, чем для DX, но всё равно она стала достаточно высокой, чоуж там.
Негативные изменения я впервые заметил при смене поколений железа с GF6600 на GF8600, т.е. при уходе от фиксированного конвейера, на который были условно прилажены шейдеры, на полностью программируемые конвейер железа нового поколения. Это меня неприятно удивило тогда.
Ну что поделать, за каждую фичу приходится платить какую-то цену.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 10-07-2021 в 12:41:

Цитата:
SNMetamorph писал:
Точнее, там не в переключениях текстур дело, а в том, что из-за того что их приходится переключать, то что могло отрисоватья бы за 5-10 DIPов, в итоге отрисовывается за 200+ DIPов, при этом, чем больше текстур на карте, тем больше вызовов получается.

Причем, именно с брашевыми энтити в этом плане все на данном этапе очень печально. Но, это решаемо, в принципе.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 10-07-2021 в 12:54:

Цитата:
SNMetamorph писал:
Но, это решаемо, в принципе.

как правило ценой минимально поддерживаемого железа.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 10-07-2021 в 13:05:

Цитата:
Дядя Миша писал:
как правило ценой минимально поддерживаемого железа.

Это да, поэтому я решил ограничиться OpenGL 3.3, поддержку более старого железа тянуть уже нет никакого смысла.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 10-07-2021 в 14:05:

Цитата:
SNMetamorph писал:
поддержку более старого железа тянуть уже нет никакого смысла.

Дело еще в том, что цена в посл. время резко подскочила на ВСЕ видеокарты без исключения. За седую древность, типа моей GTX650 сейчас просят чуть ли 7500 рублей в магазинах, торгующих старым железом.
Т.е. тот совет, который я людям раньше давал, что устаревшие железки стоят копейки, с началом этого бум-майнинга стал неактуальным. Это конечно стоит учитывать.

Добавлено 10-07-2021 в 17:05:

К тому же, у многих в пользовании не системник, которому достаточно проапгрейдить видеокарту, а ноутбуки 2009-го - 2011-го годов с интелом на борту. На новый ноутбук у людей нет денег.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 11-07-2021 в 01:35:

Вброшу про дипы. Делал рендер текста для своих демок. Нашел готовый юнит, написанный якобы по мотивам тутора NeHe. Там на каждый глиф создавалась отдельная текстура и еще дисплейный список для отрисовки. Дисплейный список включал в себя биндинг нужной текстуры, glBegin/glEnd с квадом соответствующего размера и "сдвиг каретки" через glTranslate.
Подключил юнит, вывожу 5 строчек текста, фпс падает с 300 до 150, никуда не годится. Убираю индивидуальные текстуры, делаю общий атлас для всех глифов, фпс поднимается до 220. Выкидываю дисплейные списки, рендерю целую строку одним бегин/эндом и без транслейтов, фпс возвращается на 300.
Иными словами, дипы не халявные. Что интересно, падение фпс было нелинейным. Три строки рендерились относительно быстро, резкое замедление происходило на четвертой.


Отправлено Дядя Миша 11-07-2021 в 06:08:

Цитата:
ncuxonaT писал:
Там на каждый глиф создавалась отдельная текстура

разве?

Я вывожу каждую букву отдельным дипом, но шейдера там нет и текстуры не переключаются. Вот без шейдера в OpenGL дипы довольно дешевые.
Но опять же. Если мы начинаем рисовать пиксели net_graph, это уже дорого, их лучше объеденить в длинную секвенцию.
А буквы, в той же консоли, я так прикинул, у нас получается где-то по 100 букв на 70-80 строк. А у GL замедление как раз и начинается с десяти тысяч дипов. Но, повторюсь, только если не использовать шейдер.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 11-07-2021 в 13:16:

Цитата:
Дядя Миша писал:

разве?

да
Цитата:
Дядя Миша писал:
А буквы, в той же консоли, я так прикинул, у нас получается где-то по 100 букв на 70-80 строк. А у GL замедление как раз и начинается с десяти тысяч дипов. Но, повторюсь, только если не использовать шейдер.

Ну вот я рисовал 5 строк по 150 символов без шейдера, фпс проседал.


Отправлено SNMetamorph 14-07-2021 в 10:12:

Цитата:
Дядя Миша писал:
К тому же, у многих в пользовании не системник, которому достаточно проапгрейдить видеокарту, а ноутбуки 2009-го - 2011-го годов с интелом на борту. На новый ноутбук у людей нет денег.

С интелом, к сожалению, даже с поддержкой со стороны софта скорее всего ни во что поиграть не получится, учитывая какая там ситуация с драйверами.
Да и в целом само железо просто никакущее, гонял какой-то интуль на своем ноуте, там даже игры на DirectX начала нулевых лагали дико.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Aynekko 14-07-2021 в 14:00:

Тут в ванильном ксашХТ вообще проблема с декалями на моделях. Я все время замечал что когда остаются трупы - сильно падает производительность. Думал что монстр продолжает выполнять свои функции после смерти. Но нифига подобного! Делал тест - в пустой комнате положил 6 трупов - 1000 фпс. Обстрелял их - фпс упал до 140. С gl_renderer 0 изначальный фпс был 390, после обстрела упал до 360. Всего ничего. Но и декалей на моделях конечно же нет. Из-за них все.

__________________
Мой мод на Xash


Отправлено Дядя Миша 14-07-2021 в 14:28:

Мде, в паранои я декали на моделях ускорил аппаратно, а в ксаш-моде руки уже не дошли.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-08-2021 в 14:07:

Что ж, появились некоторые новости.
Вообще, прикручивание рендера P2 я разбил бы на 3 этапа.
1. Фикс ошибок компиляции
2. Фикс ошибок линкера
3. Фикс вылезших багов
Сейчас я на 3 этапе, и уже получил самую первую картинку на новом рендере
https://sun9-48.userapi.com/impg/sJDgM5_Kzb34TX9n-m-zGP6fJTBKnVZ_0MyOwA/1rXFG9psZEQ.jpg?size=1860x1004&quality=96&sign=0dc2250eedb6881746d44eb82497435b&type=album
https://sun9-64.userapi.com/impg/lmdmQ6pZMUuVLMWFaLeQyxh0LkERtey1_RPTuw/s7EkIHocukY.jpg?size=1860x1004&quality=96&sign=be6e43e04d71e3fa21adaad5106e45d7&type=album

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-08-2021 в 14:45:

Странная картинка какая-то.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-08-2021 в 19:10:

Цитата:
Дядя Миша писал:
Странная картинка какая-то.

Специально без шейдеров запустил чтобы посмотреть на артхаос. А так оно с первого же раза корректную картинку дало.
Но есть другая проблема: после переноса рендера П2 в ксашмод, у вьюмодели и у стрел арбалета стал инверснутый питч. Я помню что это SQB, и у меня есть вопрос, в каком месте нужно поправить, чтобы исправить баг, а не запихать еще глубже?
Как я понимаю, в коде ксашмода SQB был исправлен довольно давно, а в P2 наоборот с ним ничего не сделано?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-08-2021 в 19:57:

Цитата:
SNMetamorph писал:
в коде ксашмода SQB был исправлен довольно давно, а в P2 наоборот с ним ничего не сделано?

да, в P2 я его не трогал. Гуглить по слову stupid, все места отмечены.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-08-2021 в 20:27:

Поправил все места, что были помечены как SQB, надеюсь там были действительно все. Вьюмодель и стрелы исправились к счастью.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-08-2021 в 06:18:

На клиенте его мало, в основном на сервере всё.
Но Параноевский рендерер несовместим с чистой халфой, там по рендермодам нет совпадения ЕМНИП.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-08-2021 в 07:04:

Цитата:
Дядя Миша писал:
На клиенте его мало, в основном на сервере всё.
Но Параноевский рендерер несовместим с чистой халфой, там по рендермодам нет совпадения ЕМНИП.

Как это может проявляться?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-08-2021 в 08:23:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 12-08-2021 в 17:14:

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 12-08-2021 в 17:28:

Надо моделям множитель подобрать. Это комплексная проблема, она еще с халфы тянется.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 12-08-2021 в 18:08:

Цитата:
Дядя Миша писал:
Надо моделям множитель подобрать. Это комплексная проблема, она еще с халфы тянется.

Где-то в шейдере? А в каком именно?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 12-08-2021 в 18:50:

В константах оно вроде бы вынесено.
Ну или смотри амбиент фрагментный для студии.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 12-08-2021 в 20:40:

Что-то квар r_lighting_ambient картинку совсем никак не меняет.
Ещё народ говорит, что на картах собранных п2шным компилятором с освещением моделей всё нормально.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 13-08-2021 в 05:37:

SNMetamorph а ты каким собирал?
P2-шный бумп записывает и другую информацию.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 13-08-2021 в 09:22:

Цитата:
Дядя Миша писал:
SNMetamorph а ты каким собирал?

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

Добавлено 13-08-2021 в 12:11:

Ещё есть проблема, почему-то на некоторых картах не передётся юниформа u_ViewOrigin в шейдеры, из-за фонарик работает баганно, светит на полную яркость только строго вдоль направления оси -Y, как я выяснил. Ну и в целом, освещение артефачно выглядит. Но к примеру на картах, где есть вода, а соответсвенно и отражения, эта юниформа передаётся в шейдеры.

Добавлено 13-08-2021 в 13:22:

И это происходит именно в шейдере light_bmodel_fp, студиомодели освещаются корректно.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 13-08-2021 в 09:32:

SNMetamorph ты про ксашмод говоришь или про паранойю?


Отправлено SNMetamorph 13-08-2021 в 09:43:

Цитата:
ncuxonaT писал:
ты про ксашмод говоришь или про паранойю?

Ну я рендер паранои 2 в ксашмод перетащил, и сейчас именно про него говорю.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 13-08-2021 в 09:46:

Если про паранойю, то в light_bmodel_fp надо заменить стр.104-107

Cg Pixel Shader:
L = normalize( u_LightDir.xyz );
 
// spot attenuation
float spotDot = dot( normalize( var_LightVec ), L );


на
Cg Pixel Shader:
L = normalize( var_LightVec );
 
// spot attenuation
float spotDot = dot( normalize( u_LightDir.xyz ), L );


И в light_studio_fp тоже нужно сделать что-то подобное


Отправлено SNMetamorph 13-08-2021 в 10:44:

Цитата:
ncuxonaT писал:
Если про паранойю, то в light_bmodel_fp надо заменить стр.104-107
Cg Pixel Shader:
L = normalize( u_LightDir.xyz );
 
// spot attenuation
float spotDot = dot( normalize( var_LightVec ), L );


на
Cg Pixel Shader:
L = normalize( var_LightVec );
 
// spot attenuation
float spotDot = dot( normalize( u_LightDir.xyz ), L );


И в light_studio_fp тоже нужно сделать что-то подобное

Поменял, ничего не изменилось, к сожалению.

Добавлено 13-08-2021 в 14:44:

Записал баг на видео
https://youtu.be/v96WBycP7yE

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 13-08-2021 в 10:57:

Такое впечатление, что L в касательном пространстве, а N - в мировом. Или наоборот.


Отправлено SNMetamorph 13-08-2021 в 18:41:

Весь код наконец-таки перенес в еще давно выделенное для него место
https://github.com/SNMetamorph/PrimeXT

Добавлено 13-08-2021 в 22:41:

Цитата:
ncuxonaT писал:
Такое впечатление, что L в касательном пространстве, а N - в мировом. Или наоборот.

Вполне возможно что N в касательном, судя по коду шейдера light_bmodel_vp
code:
#if defined( HAS_NORMALMAP ) var_WorldMat = tbn; #else var_Normal = tbn[2]; #endif


А затем, в light_bmodel_fp
code:
#if defined( HAS_NORMALMAP ) #if defined( APPLY_TERRAIN ) vec3 N = TerrainApplyNormal( u_NormalMap, var_TexDiffuse, mask0, mask1, mask2, mask3 ); #else vec3 N = normalmap2D( u_NormalMap, var_TexDiffuse ); #endif #else vec3 N = normalize( var_Normal ); #endif

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 13-08-2021 в 18:46:

Гляжу рендер из паранои к ксаш-моду прикрутили. Ну молодцы!
Это для автора самое приятное, когда его труды не пропадают даром, когда народ и дальше разбирается, что-то улучшает, изменяет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 13-08-2021 в 19:13:

В общем, провёл эксперимент, в шейдере light_bmodel_fp сделал такую штуку

Cg Pixel Shader:
// compute final color
gl_FragColor = vec4( N, 1.0); //diffuse;

И в итоге получил вот такую картинку

И она явно некорректная, я тестил этот шейдер на картах где всё корректно освещается, там прям по цветам видно, что нормаль корректная и задана в мировом пространстве.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 13-08-2021 в 19:46:

attr_Normal неправильный?


Отправлено SNMetamorph 13-08-2021 в 20:05:

Цитата:
ncuxonaT писал:
attr_Normal неправильный?

Ну attr_Normal там нету, но var_Normal получается да, неправильный.

Добавлено 13-08-2021 в 23:53:

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

Добавлено 13-08-2021 в 23:54:

В кейсе с корректный освещением, u_ModelMatrix единичная. Сейчас посмотрю, что в кейсе с некорректным.

Добавлено 13-08-2021 в 23:56:

В кейсе с некорректным тоже единичная. В чем же дело? Для нормали там используется tbn[2], а этот самый TBN в матрице считается по u_ModelMatrix.

Добавлено 13-08-2021 в 23:58:

Цитата:
SNMetamorph писал:
Ну attr_Normal там нету, но var_Normal получается да, неправильный.

А не, я ошибся, оно таки есть

Добавлено 14-08-2021 в 00:04:

Цитата:
ncuxonaT писал:
attr_Normal неправильный?

Да, точно, так и есть. На входе вершинного шейдера.

Добавлено 14-08-2021 в 00:05:

А есть в п2шном рендере какая-то консольная команда на перезагрузку ВСЕХ шейдеров? Было бы очень полезно для таких вот экспериментов

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 14-08-2021 в 08:06:

Цитата:
SNMetamorph писал:
gl_FragColor = vec4( N, 1.0); //diffuse;

(N + 1.0) * 0.5

Цитата:
SNMetamorph писал:
А есть в п2шном рендере какая-то консольная команда на перезагрузку ВСЕХ шейдеров?

flushshadercache

также в Opengl.cfg реколмендую установить gl_binaryshader в 0
на время тестирования.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 14-08-2021 в 08:57:

Цитата:
Дядя Миша писал:
flushshadercache

Что-то пробежался поиском по коду П2, ничего такого не нашлось.
Цитата:
Дядя Миша писал:
также в Opengl.cfg реколмендую установить gl_binaryshader в 0
на время тестирования.

Ага, уже выставил, NSight без неё не даёт смотреть исходники шейдеров.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 14-08-2021 в 09:08:

А, пардон, это я уже в NT такое ввёл. В P2 действительно нету.

Цитата:
SNMetamorph писал:
Ага, уже выставил

значит ничего не кэшируется и этой проблемы нет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 14-08-2021 в 10:02:

И так ничего не кэшируется, потому что GL_PROGRAM_BINARY_LENGTH не является валидным параметром для glGetObjectParameterivARB.


Отправлено SNMetamorph 14-08-2021 в 13:20:

Добавил себе команду r_reloadshaders, до чего же удобно стало.
Теперь надо выяснять, почему при рендеринге мира выставлен неправильный attr_Normal

Добавлено 14-08-2021 в 15:02:

В общем, выяснил, что на карте crossfire и других старых картах, при загрузке мира, у вершинам в world->vertexes просто нигде не задано значение. Но на картах, собранных свежим компилятором, такой проблемы нет.

Добавлено 14-08-2021 в 15:25:

А, нет, это все таки в Mod_ComputeFaceTBN неправильно считается нормаль для вершин.

Добавлено 14-08-2021 в 15:44:

Пофиксил расчёт TBN, там был баг с неинициализированной переменной.
https://github.com/SNMetamorph/Prim...94d135137668f83
Освещение стало нормальным, короче теперь всё нормально.

Добавлено 14-08-2021 в 17:20:

Для чего используется делюкс-мапа? Что это такое я понял, но никак не могу вьехать, что она даёт

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 14-08-2021 в 13:30:

Цитата:
ncuxonaT писал:
И так ничего не кэшируется, потому что GL_PROGRAM_BINARY_LENGTH не является валидным параметром для glGetObjectParameterivARB.

Ну вот на Nvidia это прекрасно работает.
Да и GL_PROGRAM_BINARY_LENGTH не пересекается с остальными константами.

Цитата:
SNMetamorph писал:
Пофиксил расчёт TBN, там был баг с неинициализированной переменной.

Да. Вечно какую-то мелочь забываю. Да оно и понятно. Никому в голову не приходило запускать под Параноей уровни, собранные другими компиляторами. Причём я бы мог вообще не морчиться и не делать эту поддержку. Как это щас модно - вывести сообщение, типа Параноя, работает только с оригинальными картами, собранными в p2st.

Добавлено 14-08-2021 в 16:30:

Цитата:
SNMetamorph писал:
Для чего используется делюкс-мапа? Что это такое я понял, но никак не могу вьехать, что она даёт


Если ты понял что это, то почему не можешь понять для чего это?
Лайтмапа - это значения яркости освещения в конкретной точке.
Делюксмапа - это вектор направления на свет в этой же точке.
Используется для бамп-маппинга, когда мы считаем дот от вектора нормал-мапы и вектора делюкс-мапы.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 14-08-2021 в 14:37:

Цитата:
Дядя Миша писал:
Если ты понял что это, то почему не можешь понять для чего это?
Лайтмапа - это значения яркости освещения в конкретной точке.
Делюксмапа - это вектор направления на свет в этой же точке.
Используется для бамп-маппинга, когда мы считаем дот от вектора нормал-мапы и вектора делюкс-мапы.

Всё, теперь понял, то есть без делюкс-мапы невозможно сделать корректный бамп в связке с лайтмапой.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 14-08-2021 в 15:22:

И спекуляр тоже невозможно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 14-08-2021 в 16:29:

А как на ксаше делать зацикленные звуки, если допустим вместо wav используется mp3? Есть ли поддержка такого со стороны движка? Это бы очень сильно упростило жизнь

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено a1batross 14-08-2021 в 21:01:

SNMetamorph mp3 и wav в ксаше идут через soundlib, поэтому на уровне ресурсов они вполне взаимозаменяемы.

__________________
Xash3D FWGS форк


Отправлено Дядя Миша 14-08-2021 в 21:59:

Нету, поскольку mp3 не поддрживает произвольный формат коментариев.
Некуда сохранять начало и конец лупа. В OGG ситуация несколько иная, там можно сохранять коменты вида LOOPSTART, LOOPEND.
К слову некоторые звуковые редакторы самостоятельно такие коменты записывают в OGG.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ku2zoff 15-08-2021 в 01:43:

Цитата:
SNMetamorph писал:
если допустим вместо wav используется mp3?

Зачем использовать mp3 вместо wav? Для музона, это я пони-маю (при длительности свыше минуты). Вавки с песнями довольно много весят и долго кэшируются голдсорсом. Но для обычных звуков вавки вполне себе норм. Даже в хл2 все звуки остались в этом формате, разве что 44 килогерца и стерео, в отличие от первохалфы. Интересно, в Хл: Олух звуки тоже без сжатия?


Отправлено SNMetamorph 15-08-2021 в 06:50:

Цитата:
Ku2zoff писал:
Зачем использовать mp3 вместо wav? Для музона, это я пони-маю (при длительности свыше минуты). Вавки с песнями довольно много весят и долго кэшируются голдсорсом. Но для обычных звуков вавки вполне себе норм. Даже в хл2 все звуки остались в этом формате, разве что 44 килогерца и стерео, в отличие от первохалфы. Интересно, в Хл: Олух звуки тоже без сжатия?

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-08-2021 в 07:34:

Если вы их пожмёте в MP3 они уже не будут в хорошем качестве.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-08-2021 в 08:23:

Цитата:
Дядя Миша писал:
Если вы их пожмёте в MP3 они уже не будут в хорошем качестве.

Ну смотря как пожать. Это хоть и не lossless, но можно добиться неотличимого от оригинала звучания при весьма хорошем уменьшении размера.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-08-2021 в 09:36:

Вы еще учитывайте тот факт, что ксаш не играет стереозвуки.
Точнее он их не позиционирует в пространстве правильно.
А моно-звук уже в два раза меньше места занимает.

Добавлено 15-08-2021 в 12:36:

Стереозвуки имеет смысл проигрывать только на источниках, намертво закреплённых на игроке, например оружие от первого лица.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ku2zoff 15-08-2021 в 10:55:

Цитата:
Дядя Миша писал:
Стереозвуки

Я не знаю, чего норот так гонится за какчеством звука. Моно 22 килогерца вполне норм звучит. Намного лучше, чем в первокваке. И персы ртом шевелят.


Отправлено ncuxonaT 15-08-2021 в 11:10:

Ku2zoff намного лучше, чем писиспикер


Отправлено SNMetamorph 15-08-2021 в 13:14:

Выяснилось кое-что странное. Я уже писал про затемнение моделек на П2шном рендере, так вот оказалось, сделать для студиомоделей эмбиент поярче не будет решением. Т.к. оказалось что затёмняются не все модели.
Ванильный рендер

П2шный рендер

В данном случае, затемнилось всё, кроме кресла в углу комнаты.
В обоих случаях карты собраны п2шным компилятором.
Что это такое может быть?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-08-2021 в 13:51:

Надо поставить несколько кресел в разных местах. Если все кресла светлые - значит что-то с нормалями этой модели.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 15-08-2021 в 16:53:

Цитата:
Дядя Миша писал:
Надо поставить несколько кресел в разных местах. Если все кресла светлые - значит что-то с нормалями этой модели.

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-08-2021 в 17:19:

А это кресло повертексно освещается или лукапом в лайтмапу?
Мне отсюда плохо видно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 06-10-2021 в 09:32:

Давно сюда ничего не писал. Из последних новостей: добавил поддержку порталов и мониторов. Сейчас пытаюсь сделать HDR-рендеринг.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено MrKabanovich 08-10-2021 в 15:25:

А какие нужны программы для компиляции движка PrimeXT с оригинальным рендером XashXT(PrimeXT-legacy-xashxt-render)?

__________________
Daniedov


Отправлено Cybermax 08-10-2021 в 16:04:

SNMetamorph Мой тебе непрошеный совет - документируй все изменения, где-нибудь в одном месте: github, социальная сеть, jira, etc.. Для человека впервые взглянувшего на сабж, могут быть непонятны вещи, которые тебе могут быть очевидными. Инструкции надо делать вообще пошаговые. Чем подробнее документация, тем больше тем больше народу освоит.


Отправлено MrKabanovich 11-10-2021 в 05:47:

SNMetamorph, а есть сборка с уже присутствующим файлом .dwv? Я просто не могу никак собрать код.

__________________
Daniedov


Отправлено SNMetamorph 06-11-2021 в 15:34:

Цитата:
MrKabanovich писал:
А какие нужны программы для компиляции движка PrimeXT с оригинальным рендером XashXT(PrimeXT-legacy-xashxt-render)?

Это вообще не для того, чтобы кто-то с этим что-то пытался сделать, а для того, чтоб я старый код сравнивал с новым.
Актуальный код только и только в ветке master находится.

Цитата:
MrKabanovich писал:
SNMetamorph, а есть сборка с уже присутствующим файлом .dwv? Я просто не могу никак собрать код.

Ты на гитхабе можешь готовый билд скачать: https://github.com/SNMetamorph/Prim...eases/tag/alpha
Единственное, там надо в батнике поправить слово xash на primext, забыл поменять млин. Ну на то он и альфа-билд

Цитата:
Cybermax писал:
SNMetamorph Мой тебе непрошеный совет - документируй все изменения, где-нибудь в одном месте: github, социальная сеть, jira, etc.. Для человека впервые взглянувшего на сабж, могут быть непонятны вещи, которые тебе могут быть очевидными. Инструкции надо делать вообще пошаговые. Чем подробнее документация, тем больше тем больше народу освоит.

Дык вся инфа и есть на гитхабе, это первоисточник. Там же и будет потихоньку документация писаться.

Добавлено 06-11-2021 в 19:34:

А насчет разработки: я таки добавил HDR рендеринг и bloom (за что спасибо большое психопату). Осталось лишь запилить автоматическую регулировку экспозиции на основании средней яркости сцены. Пока еще особо нет мыслей, как это реализовывать. Наверное, нужно фреймбуфер экрана отрисовать в текстуру 1x1, но что-то надо настроить, чтобы оно правильно усреднилось, и вот тут я не знаю что конкретно нужно сделать.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 06-11-2021 в 16:57:

SNMetamorph
А у тебя динамические тени есть?


Отправлено SNMetamorph 06-11-2021 в 17:09:

Цитата:
nemyax писал:
А у тебя динамические тени есть?

Да, этим уже давно никого не удивишь
Вообще тут можно поглядеть скрины и видосы с PrimeXT: https://community.lambdageneration.com/user/snmetamorph

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 06-11-2021 в 17:22:


А есть карта-пример с динамическими источниками?


Отправлено SNMetamorph 06-11-2021 в 17:49:

Цитата:
nemyax писал:
А есть карта-пример с динамическими источниками?

trimesh, например. И еще к сообщению приложил одну тестовую карту, там куча лайтов.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 06-11-2021 в 18:15:

SNMetamorph
А можешь мап-файл ещё доложить?


Отправлено SNMetamorph 07-11-2021 в 07:56:

Цитата:
nemyax писал:
А можешь мап-файл ещё доложить?

Да, вечером мне отправят, и я его приложу

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 07-11-2021 в 14:10:

А вот, собственно, исходник карты

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 17-11-2021 в 15:10:

Цитата:
ncuxonaT писал:
Если про паранойю, то в light_bmodel_fp надо заменить стр.104-107
Cg Pixel Shader:
L = normalize( u_LightDir.xyz );
 
// spot attenuation
float spotDot = dot( normalize( var_LightVec ), L );


на
Cg Pixel Shader:
L = normalize( var_LightVec );
 
// spot attenuation
float spotDot = dot( normalize( u_LightDir.xyz ), L );


И в light_studio_fp тоже нужно сделать что-то подобное

А в чем тут суть ошибки?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 17-11-2021 в 15:24:

Цитата:
SNMetamorph писал:
А в чем тут суть ошибки?

В том, что дальше ламбертово освещение считается как dot(N,L). L должно быть вектором, направленным на источник света. А u_LightDir - это направление спотлайта.


Отправлено Дядя Миша 17-11-2021 в 15:46:

Мне эти ваши споры ей-богу напоминают гаражные посиделки вокруг неисправного автомобиля. Каждый высказывает своё мнение и каждый ошибается в причине.

Добавлено 17-11-2021 в 18:46:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ncuxonaT 17-11-2021 в 15:54:

Дядя Миша но это баг из паранойи, о котором я репортил в 2016 году, и который дожил до 1.51. Не удивлюсь, если в КсашНТ он остался.
https://csm.dev/threads/paranoia-2-...396/post-917112


Отправлено Дядя Миша 17-11-2021 в 18:26:

ncuxonaT к предмету обсуждения это не имеет отношения.
Тебе ж уже говорили, что сделали, как ты сказал и баг остался.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 17-11-2021 в 18:28:

Цитата:
Дядя Миша писал:
Тебе ж уже говорили, что сделали, как ты сказал и баг остался.

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 22-12-2021 в 16:54:

Давно не было никаких новостей, хотя в это время работа шла полным ходом. Относительно последнего поста, было сделано:
- Поддержка HDR на уровне рендера (с автоподстройкой экспозиции, и само собой, тонмаппингом)
- Фикс зависимости скорости поворота NPC от серверного фреймрейта
- Реализована возможность перезагрузки шейдеров налету
- Пофиксил декали на студиомоделях (не отображались)
- Пофиксил гамма-коррекцию, теперь, как и положено, в шейдерах вычисления происходят в линейном пространстве
- Начал добавлять BRDF в рамках реализации поддержки PBR
- Маленько багфиксов и оптимизаций, но в большем масштабе это всё будет сделано после того как ключевые фичи будут реализованы.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 08-01-2022 в 19:16:

Из недавнего: добавил скрипты сборки для CMake, и попутно реализовал автогенерацию билдов на гитхабе, правда там лежат только бинарники. Контент нужно где-то отдельно выкладывать будет.
https://github.com/SNMetamorph/Prim.../tag/continious

Добавлено 08-01-2022 в 23:16:

Ну и когда я решу этот вопрос, напишу инструкцию что где искать и как ставить, если кто-то хочет потыкать.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 13-01-2022 в 00:45:

На днях прикрутил Docusaurus для документации по PrimeXT к себе на сайт. Пока что совсем ничего не заполнено, но чуть позже будем добавлять туда статьи. Купить отдельный домен для этого дела у меня в планах, но это не сейчас, а на перспективу. А пока можно полюбоваться пустой документацией
https://snmetamorph.github.io/PrimeXT/

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 13-01-2022 в 08:10:

SNMetamorph неплохо бы устраивать бета-тестирование.
Например пройти халфу полностью.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 17-01-2022 в 22:55:

Появились некоторые новости.
Я выложил тестовую статью на сайт с документацией: https://snmetamorph.github.io/Prime...s/env_dynlight/
Также с помощи товарища Velaron удалось собрать PrimeXT под линуксом, как в 32-бит, так и в 64-бит, а это значит что порт на Android ещё на шаг ближе. Ну и еще таки сделал сборку exe-лаунчера, давно без дела валялось. Ещё нужно придумать что-то в плане логотипа для всего этого дела.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 03-02-2022 в 17:27:

Цитата:
ncuxonaT писал:
И так ничего не кэшируется, потому что GL_PROGRAM_BINARY_LENGTH не является валидным параметром для glGetObjectParameterivARB.

Вот похоже как раз эта проблема вылезла на GTX 1060 с драйвером 496.76
Сейчас буду исправлять и тестить

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено ncuxonaT 03-02-2022 в 17:47:

SNMetamorph посмотри shader.cpp, что я скидывал, там было пофикшено. Хотя я потом исправлял еще что-то вроде.


Отправлено SNMetamorph 07-02-2022 в 18:26:

Время идёт, прогресс тоже идёт:
- вернул 3D-скайбокс из ксашмода
- добавил поддержку HDR для кубмап, и сделал запекание кубмап на стороне рендера (раньше они рендерились движком через envshot, что накладывало ряд ограничений)
- В системе шейдеров заменил старые ARB-функции на функции из OpenGL Core 2.0, что помогло исправить кэширование шейдеров на некоторых системах
- Пофиксил баг, из-за которого шейдер для скайбокса применялся не на всех картах, и в таких случаях скайбокс выглядел более ярким, чем он должен быть
- Добавил экспериментальную фичу: две ближайшие к камере кубмапы запекаются заново каждый кадр. Весьма удобно для дебага рендера

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-02-2022 в 07:42:

Цитата:
SNMetamorph писал:
и сделал запекание кубмап на стороне рендера (раньше они рендерились движком через envshot, что накладывало ряд ограничений)

Всмысле?
envshot вызывал кастомный рендерер паранои 6 раз с нужными углами.
Что ты там сделал?
envshot это просто отложенная очередь команд. Добавляешь команду, на следующем кадре она выполняется.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-02-2022 в 13:28:

Цитата:
Дядя Миша писал:
Всмысле?
envshot вызывал кастомный рендерер паранои 6 раз с нужными углами.
Что ты там сделал?
envshot это просто отложенная очередь команд. Добавляешь команду, на следующем кадре она выполняется.

Ну да. Так оно и работало, как ты говоришь. Проблема в том, что движок результат сохраняет уже сразу в tga файл в обычном LDR, и при таком раскладе вообще нет возможности сделать кастомный формат для этих текстур не затрагивая движок. Так что удобнее это все делать внутри рендера.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-02-2022 в 13:44:

Да в движке квар сделал для HDR и всё. Оно ведь и в других местах может пригодится.

Добавлено 08-02-2022 в 16:44:

Цитата:
Дядя Миша писал:
раньше они рендерились движком через envshot

glReadPixels - это не рендеринг, это фетчинг в экранный буффер.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-02-2022 в 14:31:

Ещё зачем-то изначально был принудительно отключен фрустум куллинг для кубмап-пассов. Зачем это было сделано, я как-то не особо понимаю.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-02-2022 в 14:41:

Рендерить кубемапы каждый кадр - плохая идея, даже в 2022-м году.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-02-2022 в 14:42:

Цитата:
Дядя Миша писал:
Рендерить кубемапы каждый кадр - плохая идея, даже в 2022-м году.

Для продакшена да. А для разработки это весьма удобно, можно приаттачиться к игре через профилировщик и посмотреть, что не так рендерится или не рендерится, если какие-то проблемы имеются.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-02-2022 в 15:05:

Цитата:
SNMetamorph писал:
Ещё зачем-то изначально был принудительно отключен фрустум куллинг для кубмап-пассов

чтобы кэш рефрешнуть

Добавлено 08-02-2022 в 18:05:

Ты уже проверял кубемапы на другом конце карты или рядом с игроком только на карте-коробке?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-02-2022 в 15:11:

Цитата:
SNMetamorph писал:
Для продакшена да. А для разработки это весьма удобно, можно приаттачиться к игре через профилировщик и посмотреть, что не так рендерится или не рендерится, если какие-то проблемы имеются.

Примерно так это выглядит


Добавлено 08-02-2022 в 19:09:

Цитата:
Дядя Миша писал:
Ты уже проверял кубемапы на другом конце карты или рядом с игроком только на карте-коробке?

Не проверял, а что с ними должно быть?

Добавлено 08-02-2022 в 19:11:

Цитата:
Дядя Миша писал:
чтобы кэш рефрешнуть

Если я правильно понял, оно само должно рефрешится, т.к. каждый кадр фрустум разный получается.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-02-2022 в 15:26:

Фрустум-то разный. А вот список объектов для рендеринга не меняется.
Они просто не отрисуются в кадре, если кэш не обновить принудительно.

Добавлено 08-02-2022 в 18:26:

А где ты там вообще увидел отключённый фрустум?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-02-2022 в 15:27:

https://github.com/SNMetamorph/Prim...7edcbb75fef0592

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 08-02-2022 в 15:57:

Цитата:
Дядя Миша писал:
Рендерить кубемапы каждый кадр - плохая идея, даже в 2022-м году.


Авторы современных движков с тобой не согласятся.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 08-02-2022 в 19:55:

C++ Source Code:
1
bool CFrustum :: CullBox( const Vector &mins, const Vector &maxs, int userClipFlags )
2
{
3
  int iClipFlags;
4
 
5
  if( CVAR_TO_BOOL( r_nocull ))
6
    return false;
7
 
8
  if( userClipFlags != 0 )
9
    iClipFlags = userClipFlags;
10
  else iClipFlags = clipFlags;

Вот мои сорцы. Ничего подобного в них нет.
Но. То что ты привёл не отключает фрустум. Оно наоборот скипает все модели, попавшие в него и не рисует их.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-02-2022 в 19:58:

Действительно, глянул blame и обнаружил что оно появилось после августовского коммита. Интересно, зачем и почему
https://github.com/SNMetamorph/Prim...8954c036f1f8673

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-02-2022 в 07:13:

Хех, сам условия вставляет, еще и меня обвиняет. Очуметь можно.

Добавлено 09-02-2022 в 10:13:

Цитата:
SNMetamorph писал:
глянул blame

Blame On Myslef!

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-02-2022 в 13:10:

Цитата:
Дядя Миша писал:
Хех, сам условия вставляет, еще и меня обвиняет. Очуметь можно.

Ну я никого не обвинял, в том числе и себя.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 14-02-2022 в 19:42:

Немножко пополнилась документация: пара статей по энтитям и одна большая статья по работе с текстурами в PrimeXT
https://snmetamorph.github.io/Prime...g_with_textures
Задавайте вопросы, если есть какие-то непонятные моменты, разъясню их в будущих ревизиях документации.

Добавлено 14-02-2022 в 23:25:

И да, если кто-то желает помочь с составлением документации - пишите, буду рад. По большей части в плане энтить там должна быть копипаста с ксашмодовской документации, но перепроверенная и со свежими изменениями.

Добавлено 14-02-2022 в 23:42:

По сути, по пунктам из самого первого поста в этом топике, невыполненными остались только 3 и 4. То есть развитие проекта идёт в правильном направлении.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 15-02-2022 в 08:29:

А зачем сохранять в DXT3? Он же калечный.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 18-02-2022 в 23:36:

Обновил дизайн на сайте с документацией
https://snmetamorph.github.io/PrimeXT/

Добавлено 19-02-2022 в 03:36:

Также выложил ролик с новой шейдерной водой с кубмапными отражениями
https://community.lambdageneration.com/post/bqga4fzd

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 19-02-2022 в 07:30:

SNMetamorph Психопат тебе помогает? Неплохо.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 01-03-2022 в 23:22:

Есть еще одна любопытная деталь. Изначально TBN для брашей генерился невалидный, как раз поэтому для правильной работы параллакса приходилось инвертировать координату Y в векторе вида. Это при том, что на студиомоделях параллакс работал только без этой инверсии. Так вот, после того как я в функции Mod_ComputeFaceTBN убрал инверсию binormal вектора, все стало прекрасно работать и на брашах, и на студиомоделях.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 02-03-2022 в 16:14:

То что было в прошлом посте - не фикс, это путаница. А тут я уже поправил все и теперь точно работает как надо.
https://github.com/SNMetamorph/Prim...a4a967f65a371f5

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 02-03-2022 в 16:25:

Цитата:
SNMetamorph писал:
То что было в прошлом посте - не фикс, это путаница

Сколько еще постов будет? Два? Три?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 02-03-2022 в 21:51:

Цитата:
Дядя Миша писал:
Сколько еще постов будет? Два? Три?

Много

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 18-04-2022 в 12:29:

Поднакопилось изменений за полтора месяца:
- пофикшен параллакс-маппинг на декалях
- исправлена сборка всех утилит под 64 бита
- добавлена система отслеживания ошибок компиляции убершейдера: выводит путь до файла и номер строки, на которой произошла ошибка
- исправлена компиляция утилиты pxsv (PrimeXT Sprite Viewer)
- исправлено неправильное поведение альфа-канала на студиомодельных текстурах с флагом transparent
- из шейдеров удалены остатки кода реализации BRDF, унаследованого из P2
- исправлено некорректное наложение лайтмапы в PBR-режиме освещения
- добавлена поддержка ImGui, и это уже можно использовать в модах. На данный момент не реализован лишь ввод символов с клавиатуры и чтение/запись в буфер обмена, но это сейчас в процессе

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 18-04-2022 в 15:50:

Цитата:
SNMetamorph писал:
пофикшен параллакс-маппинг на декалях



Добавлено 18-04-2022 в 18:50:

Ради интереса зашёл в документацию - даже меня добавили в кредитсы.
А ведь я не настоящий сварщик

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 19-04-2022 в 17:12:

Сделал альбом, который периодически буду пополнять скриншотами
https://vk.com/album-208286549_281688909

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 07-05-2022 в 19:01:

Сделали документацию по компилятору студиомоделей
https://snmetamorph.github.io/Prime...ls/pxstudiomdl/

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 07-06-2022 в 22:09:

Пришло время некоторых новостей
* В документацию добавлена статья по установке (https://snmetamorph.github.io/Prime...us/installation)
* Реализован specular IBL в рамках physically-based модели освещения
* Исправлен баг в pxcsg и pxbsp, из-за которого на неаксиальной брашевой геометрии могли пропадать полигоны
* Исправлен баг в pxstudiomdl, из-за которого текстурные координаты съезжали по вертикали на 1 пиксель, если не был использован параметр $freecoords (оба этих бага были в инструментах для P2, возможно кто-то сталкивался)
* В текстуру с параметрами материала добавлен еще один параметр: specular intensity. Подробнее, опять же, можно прочитать в документации (https://snmetamorph.github.io/Prime...g_with_textures)

Добавлено 08-06-2022 в 02:09:

Цитата:
SNMetamorph писал:
Поднакопилось изменений за полтора месяца:
- пофикшен параллакс-маппинг на декалях
- исправлена сборка всех утилит под 64 бита
- добавлена система отслеживания ошибок компиляции убершейдера: выводит путь до файла и номер строки, на которой произошла ошибка
- исправлена компиляция утилиты pxsv (PrimeXT Sprite Viewer)
- исправлено неправильное поведение альфа-канала на студиомодельных текстурах с флагом transparent
- из шейдеров удалены остатки кода реализации BRDF, унаследованого из P2
- исправлено некорректное наложение лайтмапы в PBR-режиме освещения
- добавлена поддержка ImGui, и это уже можно использовать в модах. На данный момент не реализован лишь ввод символов с клавиатуры и чтение/запись в буфер обмена, но это сейчас в процессе

Ещё забыл упомянуть, что поддержка ImGui уже давно реализована в полном объёме и её вполне можно использовать со всеми удобствами.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-06-2022 в 05:34:

Между прочим, я на хабре вроде бы читал, что ImGui используется в Unity.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено KiQ 08-06-2022 в 14:31:

В FWGS куда-то пропали 7z билды, кажет какой-то AppImage

Добавлено 08-06-2022 в 16:59:

А, таки они не в continous build лежат, надо бы тогда ссылку в инструкции поправить

Добавлено 08-06-2022 в 17:20:





Win10 LTSC, Ryzen 5 2600X, GeForce GTX1650 если что

Добавлено 08-06-2022 в 17:31:

Через xash3d.exe халфа запускается и играется

__________________
-Brain is dead-


Отправлено Дядя Миша 08-06-2022 в 15:00:

Вы объясните для нубов, вот я хочу допустим скачать и заценить новые демки, а халфу не хочу ставить. Есть какой-то инсталлятор?
Чтобы одним файлом скачалось и сразу всё поставилось.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 08-06-2022 в 21:04:

Цитата:
KiQ писал:
В FWGS куда-то пропали 7z билды, кажет какой-то AppImage

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

Добавлено 09-06-2022 в 00:59:

Цитата:
Дядя Миша писал:
Вы объясните для нубов, вот я хочу допустим скачать и заценить новые демки, а халфу не хочу ставить. Есть какой-то инсталлятор?
Чтобы одним файлом скачалось и сразу всё поставилось.

На релизных версиях будет. Сейчас пока еще нифига не устаканилось.

Добавлено 09-06-2022 в 01:04:

Цитата:
KiQ писал:
А, таки они не в continous build лежат, надо бы тогда ссылку в инструкции поправить

Это не то. Билды движка которые в релизах это старьё за 2019 год.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-06-2022 в 06:13:

Цитата:
SNMetamorph писал:
Сейчас пока еще нифига не устаканилось.

А когда ждать примерно?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-06-2022 в 11:30:

Цитата:
Дядя Миша писал:
А когда ждать примерно?

Я думаю что в этом году уже. Точный месяц не могу сказать пока.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-06-2022 в 12:03:

SNMetamorph а напомни какие фичи будут в релизной версии.
Не багфиксы, а именно фичи.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Decay 10-06-2022 в 19:26:

https://hlfx.ru/forum/showthread.ph...9275#post209275
У light_environment pitch не переносится в angles.

Смотрим UMHLT v34
bspfile.cpp:1984

C++ Source Code:
sscanf (ValueForKey (mapent, "angles"), "%f %f %f", &vec[0], &vec[1], &vec[2]);
float pitch = FloatForKey(mapent, "pitch");
if (pitch)
  vec[0] = pitch;

Позже оно удаляется
bspfile.cpp:2006
C++ Source Code:
DeleteKey (mapent, "pitch");

Но при этом есть код в rad, учитывающий наличие pitch, что странно, и только он остался в p2st. Надеюсь что я правильно понял и это надо бы как-то исправить.

И у вас gl_clear чота не работает


Отправлено Дядя Миша 10-06-2022 в 19:39:

Не поленился и сделал поиск по слову "pitch" в p2st.
Нет там никакого удаления этого поля. Единственное обращение - в lightmap.cpp:1824

И я честно говоря не припоминаю, чтобы удалял это поле. Может быть это китаец сделал?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Decay 10-06-2022 в 20:02:

В p2st нет удаления, в vhlt/umhlt есть. Но не суть. Надо в angles перебрасывать, а то sv_skyvec_z нулевой получается. Я заметил что в прайме на тестовых картах в исходниках оба угла солнца записаны в angles, хотя я вот привык писать отдельно pitch -30 например, ну как нас давно учили. И в fgd прайма это поле есть.


Отправлено SNMetamorph 10-06-2022 в 21:14:

Цитата:
Decay писал:
В p2st нет удаления, в vhlt/umhlt есть. Но не суть. Надо в angles перебрасывать, а то sv_skyvec_z нулевой получается. Я заметил что в прайме на тестовых картах в исходниках оба угла солнца записаны в angles, хотя я вот привык писать отдельно pitch -30 например, ну как нас давно учили. И в fgd прайма это поле есть.

В чем итоге проблема?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Decay 10-06-2022 в 21:58:

Карта
https://ibb.co/nsZ9mdW

Скомпилено prime тулзами
https://ibb.co/qDvrmyp
https://ibb.co/8ssKrLy
https://ibb.co/PcwS8c6

Скомпилено umhlt
https://ibb.co/tQsVJn0
https://ibb.co/nzDsHZn
https://ibb.co/3MY4zPL
https://ibb.co/Sw5kYXn


Отправлено SNMetamorph 10-06-2022 в 23:15:

Цитата:
Дядя Миша писал:
SNMetamorph а напомни какие фичи будут в релизной версии.
Не багфиксы, а именно фичи.

- Целостное освещение, с возможностью использования PBR или традиционной модели освещения
- Предиктинг пушек, то чего не хватало в XashXT для мультиплеера
- Всякие графические улучшения (bloom, SSR, etc.)
- Кроссплатформа в виде поддержки Linux/Android
- Оптимизация рендеринга (а это масштабная тема, и скорее всего не получится всё задуманное сразу в релизной версии сделать, так что это будет постепенно внедряться)
Возможно что-то упустил

Добавлено 11-06-2022 в 03:15:

Цитата:
Decay писал:
Карта
https://ibb.co/nsZ9mdW

Скомпилено prime тулзами
https://ibb.co/qDvrmyp
https://ibb.co/8ssKrLy
https://ibb.co/PcwS8c6

Скомпилено umhlt
https://ibb.co/tQsVJn0
https://ibb.co/nzDsHZn
https://ibb.co/3MY4zPL
https://ibb.co/Sw5kYXn

Так надо сделать чтобы было как UMHLT или что? Не вдупляю что-то.
А, кажется допёр. Ну мне кажется лучше угол писать напрямую в поле angles, а этот вот pitch убрать из FGD вообще.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 11-06-2022 в 05:48:

Цитата:
SNMetamorph писал:
а этот вот pitch убрать из FGD вообще

Не советую.

Цитата:
SNMetamorph писал:
Оптимизация рендеринга

А, биндлесс текстуры?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 11-06-2022 в 12:10:

Цитата:
Дядя Миша писал:
А, биндлесс текстуры?

Помимо этого там дофига всего, в основном на CPU-side

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Decay 11-06-2022 в 12:52:

Странный эффект с этой моделькой
https://ibb.co/XkzSWCV
https://ibb.co/k8HwVPM

https://file.io/q0JRLPko42t5


Отправлено Ku2zoff 11-06-2022 в 13:27:

Цитата:
Decay писал:
Странный эффект с этой моделькой

Это Гэндальф Белый, вон как светится. А точно именно с этой моделью? Если вместо неё сунуть другую модель с таким же количеством полигонов? Ну то есть, чтобы количество вершин, текстур и всякого были такие же или выше, но модель другая?


Отправлено Decay 11-06-2022 в 13:36:

Модель куда-то делась


Отправлено SNMetamorph 11-06-2022 в 13:47:

Цитата:
Decay писал:
Странный эффект с этой моделькой
https://ibb.co/XkzSWCV
https://ibb.co/k8HwVPM

https://file.io/q0JRLPko42t5

Пропиши gl_sunshafts 0

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Decay 11-06-2022 в 14:31:

Цитата:
SNMetamorph писал:
Пропиши gl_sunshafts 0

Теперь черных лучей нет.
Разглядел поближе
https://ibb.co/XWfkCF2
https://ibb.co/RcZzGvp

Ku2zoff там есть гман из хл2 и с ним такого не наблюдается

Добавлено 11-06-2022 в 21:31:

Там походу ломаные четырехугольники внутри.
https://ibb.co/gdxMQ1Q
https://ibb.co/pwX3y64
Под обычной халфой (в том числе Xash3D) эти штуки выглядят как в model viewer, а вот в XashXT они уже черные


Отправлено Ku2zoff 11-06-2022 в 14:50:

Какой-то баг в рендерере.

Цитата:
Decay писал:
Там походу ломаные четырехугольники внутри.

Пояс у этой модели сделан по-уродски. И вообще у всех UHD моделей излишняя детализация вроде петель для ремня на брюках, ремешков у перчаток на запястьях и всякой другой мелочи, что с халфовским FOV-ом в 90 (100-110 для широкоформатных мониторов) совершенно не видно. Вот если скрутить фов до 60-70, как в свалкере или метре, тогда да, вся эта дрянь будет различима. ИМХО, лучше такие вещи делать на самой текстуре, благо даже голдсорс позволяет рисовать их большого размера: 262144 пикселя. Это либо квадрат 512х512, либо прямоугольник 720х360, и т.д. То есть, при желании, даже без кастомного рендерера можно нарисовать очень чёткие текстуры.


Отправлено SNMetamorph 11-06-2022 в 18:10:

Цитата:
Decay писал:
Теперь черных лучей нет.
Разглядел поближе
https://ibb.co/XWfkCF2
https://ibb.co/RcZzGvp

Ku2zoff там есть гман из хл2 и с ним такого не наблюдается

Добавлено 11-06-2022 в 21:31:

Там походу ломаные четырехугольники внутри.
https://ibb.co/gdxMQ1Q
https://ibb.co/pwX3y64
Под обычной халфой (в том числе Xash3D) эти штуки выглядят как в model viewer, а вот в XashXT они уже черные

Хм, любопытно, мне однажды этот баг репортили. Интересно, че это может быть

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 11-06-2022 в 20:06:

Decay под ванильным ксаш-модом тоже есть этот баг?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 11-06-2022 в 21:25:

Цитата:
Дядя Миша писал:
Decay под ванильным ксаш-модом тоже есть этот баг?

Мне кажется, если он и есть, то не будет так заметен, потому что там нет блума.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено [CFR] B@N@N 14-06-2022 в 13:02:

Интересно попробовать ваш двиг, есть ли какие-то веб ресурсы, где можно скачать, обсудить, задать вопросы и получить помощь?


Отправлено Crystallize 14-06-2022 в 15:22:

SNMetamorph Наверное вам нужен для текстирования пак стремных моделей по аналогии с паком стремных карт на котором тестируют компиляторы.


Отправлено SNMetamorph 14-06-2022 в 19:47:

Цитата:
Crystallize писал:
SNMetamorph Наверное вам нужен для текстирования пак стремных моделей по аналогии с паком стремных карт на котором тестируют компиляторы.

Было б неплохо, я думаю

Добавлено 14-06-2022 в 23:47:

Цитата:
[CFR] B@N@N писал:
Интересно попробовать ваш двиг, есть ли какие-то веб ресурсы, где можно скачать, обсудить, задать вопросы и получить помощь?

https://snmetamorph.github.io/Prime...us/installation
Вообще еще на этом сайте пошарься, там есть ссылка на дискорд, либо ты прямо в этом топике можешь вопросы задавать.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 15-06-2022 в 10:26:

SNMetamorph
Можешь выкладывать amd64-сборки тоже?


Отправлено SNMetamorph 15-06-2022 в 12:57:

Цитата:
nemyax писал:
SNMetamorph
Можешь выкладывать amd64-сборки тоже?

С одной стороны надо бы, но с другой тогда надо еще инструкцию по установке дописывать и додумывать. Вот в этом проблема.

Добавлено 15-06-2022 в 16:57:

Цитата:
Decay писал:
Теперь черных лучей нет.
Разглядел поближе
https://ibb.co/XWfkCF2
https://ibb.co/RcZzGvp

Ku2zoff там есть гман из хл2 и с ним такого не наблюдается

Добавлено 11-06-2022 в 21:31:

Там походу ломаные четырехугольники внутри.
https://ibb.co/gdxMQ1Q
https://ibb.co/pwX3y64
Под обычной халфой (в том числе Xash3D) эти штуки выглядят как в model viewer, а вот в XashXT они уже черные

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Decay 15-06-2022 в 13:55:

У вертолета из CS, который на as_oilrig - orange.mdl (и arcticorange.mdl на as_tundra) - концы лопастей тоже сияют. Там пары компланарных полигонов (с разными нормалями), и соединены они как попало. Одна такая пара не светится, я хотел закономерность найти, но там такая мешанина что голову сломаешь.

Добавлено 15-06-2022 в 20:55:

То есть там много где не объединены вершины


Отправлено SNMetamorph 15-06-2022 в 14:08:

В общем, фикс сработал, поэтому расписываю в чем была проблема.
Каким-то образом, не знаю, это вина компилятора студиомоделей или самого моделлера, но в моделях были нулевые нормали. Они попадаются даже стандартных моделях из HL1. А дальше получалась такая цепочка: нулевые нормали попадают в VBO, затем в вершинный шейдер через атрибуты вершин, там происходит нормализация нулевого вектора, и это возвращает либо ноль (бага нет) либо NaN (именно по этой причине баг визуально проявляется), и это зависит от версии драйвера и видеокарты. Лично на моем железе бага не было, но у нескольких других человек он проявлялся. Ну а поскольку в результате получился NaN, то он похерил все остальные последующие вычисления в фрагментном шейдере. Именно оттуда эти ореолы вокруг объектов.
Фикс получился довольно простой: при загрузке студиомодели я нахожу нулевые нормали и задаю им рандомное направление.
https://github.com/SNMetamorph/Prim...261be9a5a8df3d7

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено nemyax 16-06-2022 в 10:09:

Цитата:
SNMetamorph писал:
С одной стороны надо бы, но с другой тогда надо еще инструкцию по установке дописывать и додумывать. Вот в этом проблема.

Ну а ты собирал под 64 бита? Работает?


Отправлено SNMetamorph 16-06-2022 в 19:26:

Цитата:
nemyax писал:
Ну а ты собирал под 64 бита? Работает?

Собирается под 64 бита оно без проблем, в том числе утилиты. Сам прайм на 64 битах не тестил, как то влом, а вот утилиты работают вообще без каких либо проблем.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено KiQ 17-06-2022 в 00:27:

https://hlfx.ru/forum/showthread.ph...9644#post209644

а ту есть капкое-та решение?)

__________________
-Brain is dead-


Отправлено SNMetamorph 17-06-2022 в 13:54:

Цитата:
KiQ писал:
https://hlfx.ru/forum/showthread.ph...9644#post209644

а ту есть капкое-та решение?)

Повтори всё по инструкции, всё теперь на месте

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено TheEVolk 19-07-2022 в 13:41:

Motion Blur

В свободное от работы время набросал Motion Blur на базе PrimeXT. Никогда до этого не работал с шейдерами, и вот решил попробовать.

https://imgur.com/a/8QMDxjh

Пока допиливаю и оптимизирую все, чтобы можно было создать пул реквест в оригинальный репозиторий. Сначала вся сцена рисуется в текстуру через шейдер, который сравнивает положение вершины с предыдущей и считает для неё перемещение за t. Потом постпроцесс шейдер блюра по этой текстуре блюрит итоговую картинку.

__________________
exit();


Отправлено SNMetamorph 07-08-2022 в 16:01:

Сегодня ровно год с того момента, как PrimeXT начал своё существование. За и этот год, конечно, поменялось очень многое. По хорошему бы сделать огромный changelog, но мне пока как-то лень его составлять, ибо там реально много всего.

Добавлено 07-08-2022 в 20:01:

Чтобы хотя бы что-то было, приложу скриншоты с новым шейдером воды.



__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 07-08-2022 в 16:15:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 07-08-2022 в 16:22:

Цитата:
Дядя Миша писал:
Как теперь обстоят дела с производительностью?
Я многое не делал, вот как раз чтобы скорость работы не упала.


Пока что ничего нового, потому что я только освещением занимался пока. После того как закончу с ним, можно будет и перфомансом заняться параллельно с другими вещами

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 09-08-2022 в 08:59:

SNMetamorph
А что подводный туманчек светится в темноте?
Неплохо, добавь ещё каустиксы и пенку по краям. И убери этот вырвиглазный блюм.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено SNMetamorph 03-09-2022 в 18:41:

Цитата:
FiEctro писал:
А что подводный туманчек светится в темноте?

Да, если с освещением прозрачной воды все просто, то правильно освещать мутную - весьма нетривиальная задача на самом деле.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 03-09-2022 в 20:04:

Цитата:
SNMetamorph писал:
то правильно освещать мутную - весьма нетривиальная задача на самом деле.

Здесь мы очевидно имеем дело с volumetric light в рассеяной среде.
Можно посмотреть в сорцы Tesseract, там на удивление быстрая реализация volumetric, хотя фейк наверное.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 04-09-2022 в 08:45:

Цитата:
Дядя Миша писал:
Здесь мы очевидно имеем дело с volumetric light в рассеяной среде.

В каком контексте оно там используется?

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 04-09-2022 в 09:14:

Свет в тумане. Хотя это наверное кастомная демка, я её нашел на форуме самого тессеракта. Из каробки этот свет не посмотреть.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 19-09-2022 в 21:09:

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 29-10-2022 в 01:40:

Появились кое какие интересные данные.
Где-то приблизительно 1-2 недели назад, мне Креозот зарепортил о проблемах при компиляции карты. Компилятор падает с out of memory, это притом что свободной памяти в системе есть как минимум несколько гигабайт, чего более чем достаточно. Путём недолгих разбирательств выяснилось, что дело в фрагментации памяти. В качестве эксперимента, я решил прикрутить менеджер памяти mimalloc, что успешно сделал. Осталось его хорошо протестировать. Но есть еще один момент. На системах, начиная с Windows Vista, есть такой механизм как ASLR, который при запуске процесса рандомизует базовые адреса модулей, в т.ч. системных библиотек. И вот я решил поглядеть, что же такое половинит огромные куски свободной памяти в адресном пространстве. Это оказались системные библиотеки . И если для 64-разрядных процессов это не сыграет никакой роли в плане фрагментации, ибо адресное пространство там огромнейшее, то на 32-разрядных процессах оно вставляет палки в колёса. Причём, системе не важно, собран ли файл старым компилятором, который про ASLR понятия не имеет, либо же новым, и там включен ASLR - система все равно, по умолчанию, будет грузить библиотеки по рандомным адресам. Хотя это поведение отключаемое. А вывод какой: если бы была возможность собрать приложение под 64 бита безо всяких переделок, то не пришлось бы с этим всем возиться. То есть в будущем надо все таки обязательно весь код портировать под 64 бита, чем я когда-то начал заниматься, но пока не закончил. Переделать всё, это ещё ладно, надо ещё всё тщательно протестировать.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 29-10-2022 в 06:56:

Цитата из Вики:

Цитата:

Для использования ASLR исполняемые файлы требуется собирать со специальными флагами. В результате в коде не будут использоваться постоянные адреса, но при этом:

увеличится размер кода исполняемых файлов;
увеличится время загрузки в память каждого исполняемого файла;
возникнет дополнительная несовместимость с ПО и библиотеками, разработанным под версии ОС без ASLR.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 29-10-2022 в 19:06:

Чтож, по предварительной информации, mimalloc не дал значимых преимуществ в преодолении фрагментации в 32-разрядных процессах. А поскольку выключать ASLR во всей системе только ради того чтобы работали компиляторы это не вариант, остаётся лишь портировать компиляторы под 64 бита. Иных вариантов нет.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 29-10-2022 в 20:17:

Цитата:
SNMetamorph писал:
Чтож, по предварительной информации, mimalloc не дал значимых преимуществ в преодолении фрагментации в 32-разрядных процессах

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

Цитата:
SNMetamorph писал:
поскольку выключать ASLR во всей системе

Ты точно читал, то что я привёл?

Цитата:
Дядя Миша писал:
Для использования ASLR исполняемые файлы требуется собирать со специальными флагами

Пересобери исходники без ASLR. Или ты полагаешь что принудительный распил памяти для всего софта не похоронил бы новую винду в глазах её пользователей уже в момент выхода?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 29-10-2022 в 21:04:

Цитата:
SNMetamorph писал:
Причём, системе не важно, собран ли файл старым компилятором, который про ASLR понятия не имеет, либо же новым, и там включен ASLR - система все равно, по умолчанию, будет грузить библиотеки по рандомным адресам. Хотя это поведение отключаемое.

Я ж писал про это уже

Добавлено 30-10-2022 в 00:56:

Цитата:
Дядя Миша писал:
Пересобери исходники без ASLR.

Это влияет только на модуль самой программы. На остальные модули, типо системных библиотек, это никакого влияния не оказывает. Они так и будут грузиться в рандомные адреса. Я это уже проверил

Добавлено 30-10-2022 в 01:04:

Чтобы не быть голословным, я запустил HLMV который был собран шестой студией, разумеется она понятия никакого не имеет об ASLR. И что же мы видим:

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 30-10-2022 в 09:38:

Оригинальный p2rad тоже падает с нехваткой памяти на системе с ASLR?
Я помню строго обратное поведение. Там где на той же XP не хватало памяти, на 64-х битной системе это же 32-х битное приложение вполне комфортно себя чувствовало. Пример - Stalker. Lost Alpha. Очевидно в данном случае все эти распилы ей шли только на пользу.

Добавлено 30-10-2022 в 12:38:

Кстати. Вот еще что вспомнил. Кто как не знаю, но лично я с незапамятных времён укрепился в мысли, что ни одну винду без предварительного твикинга юзать вообще невозможно. Поэтому после установки запускаю подходящий твикер и долго-долго отключаю там всякую пердь. Вполне вероятно что и ASLR я тоже таким образом отключал, но он скрывался под какой-то общей галкой, оптимизация потребления памяти может.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 30-10-2022 в 20:36:

Цитата:
Дядя Миша писал:
Оригинальный p2rad тоже падает с нехваткой памяти на системе с ASLR?

Странно, но нет. Он вцелом build kD trees очень быстро пролетает, вот в данном конкретном случае, на карте на которой out of memory вылетает.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 31-10-2022 в 07:08:

C++ Source Code:
patch_t = 432 bytes
sample_t = 128 bytes

Это очень много на самом деле. Соптимизировать бы. Я просто знал, что у меня впереди XashNT, поэтому не стал возиться с ним бесконечно.
Там-то лайтмапер в десятки раз лучше оптимизирован. Он у меня радиосити на сталкеровских картах рассчитывает, причём с luxel_size = 8, chop=64.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 31-10-2022 в 18:04:

По предварительным данным тестов, праймовские 64-битные компиляторы собрали карту ЧАЭС за 10 минут, а оригинальные p2st собирают её за 1 час 7 минут. Причём, в p2st генерация kD-trees происходит намного быстрее, чем в прайм-компиляторах. Но зато прайм-компиляторы гораздо быстрее считают саму лайтмапу (именно на этот процесс уходит больше всего времени в случае с p2st).

Добавлено 31-10-2022 в 22:04:

Но это не имеет значения, до тех пор пока я не убедюсь что результат в обоих случаях валидный.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 31-10-2022 в 18:46:

Цитата:
SNMetamorph писал:
а оригинальные p2st собирают её за 1 час 7 минут

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 01-11-2022 в 09:40:

Цитата:
Дядя Миша писал:
Насколько я помню, он с ней управлялся за несколько минут. Но это конечно только прямой свет.


Жуть. Когда будет поддержка GPU?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено SNMetamorph 01-11-2022 в 18:16:

Цитата:
FiEctro писал:
Жуть. Когда будет поддержка GPU?

У психопата лайтбейкер на GPU работает, уже.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено SNMetamorph 08-11-2022 в 02:00:

Что ж, попробовал я в прайме запустить карту ЧАЭС. И при запуске вылетает с out of memory где-то в коде создания кэша коллизии. Вообще точно та же проблема, что была с компиляторами карт, и тут ясно было что причина в фрагментации памяти. После чего портировал код под 64 бита - тщательных тестов пока не проводил, но и ни на какие проблемы не наткнулся за всё время. На 64 битах карта всё-таки запускается где-то 1-2 минуты. Из проблем, пожалуй, коллизия криво сгенерилась местами, но тут как я понял вина старого PhysX SDK. Оперативной памяти отожрало ровно 2 гигабайта. Ещё не очень понравилась лайтмапа на моделях, местами есть разного рода артефакты, местами всё ок. Уж не знаю, в чём причина, это сама карта так скомпилирована (я запускал карту из тестового пака для P2) или же это какие-то косяки в рендере. Скриншоты я приложу










__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 08-11-2022 в 06:21:

В Параное не было PhysX, а тут он видимо отъел дополнительно памяти.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 08-11-2022 в 09:45:

Такое ощущение что беда с нормалями.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 08-11-2022 в 10:29:

FiEctro это был мой первый опыт по наложению лайтмапы на произвольную геометрию. Там со всем беда.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-11-2022 в 01:58:

Цитата:
FiEctro писал:
Такое ощущение что беда с нормалями.

Да, не исключено такое. Там уж надо проверить, что с этой моделью вообще.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 09-11-2022 в 09:03:

Выложите модельку

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 09-11-2022 в 09:23:

Моделька тут лежит уже несколько лет: https://hlfx.ru/forum/showthread.php?s=&threadid=5285

Добавлено 09-11-2022 в 12:23:

Прикрепил тему на всякий случай.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 09-11-2022 в 14:49:

Дядя Миша
А есть в человеческом формате? Obj, fbx?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 09-11-2022 в 15:28:

Неа. Только такое. А что, smd уже нечеловеческий формат?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 09-11-2022 в 16:15:

Дядя Миша
Что то у меня не всё декомпилируется.

Цитата:
Дядя Миша писал:
А что, smd уже нечеловеческий формат?


Скажем для ценителей возиться и т.п. Неудобно с ним работать. Может когда инструментарий появится к нему нормальный, я изменю своё мнение. Вон в Юнити кидаешь любую модельку, а он втихую сам её собирает в собственный формат, кидаешь новую версию, обновляет и игровую. Автоматом цепляет все материалы и конвертирует их в свои.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 09-11-2022 в 16:37:

Цитата:
FiEctro писал:
а он втихую сам её собирает в собственный формат

Ну как бы хорошего тоже мало. Почему втихую? Почему не предупредил?
Что за инициатива с мест.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-11-2022 в 16:50:

Цитата:
FiEctro писал:
Дядя Миша
Что то у меня не всё декомпилируется.



Скажем для ценителей возиться и т.п. Неудобно с ним работать. Может когда инструментарий появится к нему нормальный, я изменю своё мнение. Вон в Юнити кидаешь любую модельку, а он втихую сам её собирает в собственный формат, кидаешь новую версию, обновляет и игровую. Автоматом цепляет все материалы и конвертирует их в свои.

Пробуй mdldec из FWGS юзать.
https://github.com/FWGS/xash3d-fwgs...facts/427672963

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 09-11-2022 в 17:20:

Цитата:
Дядя Миша писал:
Ну как бы хорошего тоже мало. Почему втихую? Почему не предупредил?
Что за инициатива с мест.


А чего там предупреждать? Если ты закинул сразу папку с десятками, а то и сотнями моделей, ты что делать будешь? Потом каждую можно реимпортнуть и настроить настройки импорта, если это нужно.

При сборке проекта он всеравно все неиспользующиеся ресурсы вычищает.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено SNMetamorph 09-11-2022 в 18:32:

Провёл еще кое какой тест: скомпилировал праймовские компиляторы карт под 64 бита в релизном режиме. Попробовал скомпилировать ранее обмусоленную карту ЧАЭС. Результат получился очень неожиданным:
карта собралась за 2 минуты и 6 секунд. Разница с оригинальными P2:S компиляторами просто колоссальная. Там эта карта, на том же самом железе, эта карта собиралась 1 час и 6 минут. С чем связана такая огромная разница - я себе не особо представляю. Либо это какие-то оптимизации компилятора, либо архитектура x86_64 сама по себе позволяет генерить более быстрый код, т.к. там регистров больше, и можно лишние обращения к памяти убрать, что в целом гораздо медленнее чем работы с данными только в рамках регистров.

Добавлено 09-11-2022 в 22:32:

P.S: Никаких проблем с картой не обнаружено. Даже наоборот, артефактов освещения стало меньше, чем их было на оригинальной карте. Второй раз скрины выкладывать мне лень, да и там все равно разница только в каких-то мелочах. Но такой неожиданный результат порадовал

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Дядя Миша 09-11-2022 в 19:37:

Цитата:
FiEctro писал:
Если ты закинул сразу папку с десятками, а то и сотнями моделей, ты что делать будешь?

Ворованными?

Цитата:
SNMetamorph писал:
карта собралась за 2 минуты и 6 секунд

Так и уменя прямой свет на этой карте считался 3-4 минуты, причём на Core-i3. Я еще в 19-м году про это писал.
Собственно, рейтрейсинг скорее всего собрался с SSE-оптимизациями.
В принципе он и так был под них заточен, я его наоборот переписывал обратно на FPU, потому что так оказалось быстрее на 32-х битной архитектуре, но это проблема не самого SSE, а того, кто писал этот рейтрейсер. А вот компилятор, наоборот - оптимизировал как надо.
Отсюда же и исчезновение некоторых артифактов.

Добавлено 09-11-2022 в 22:37:

А, и это. Ты пробовал собирать карту изначально моими компиляторами, собранными шестой студией, или сначала пересобрал их в 19-й студии под 32 бита и у тебя получился час?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 09-11-2022 в 19:38:

Цитата:
Дядя Миша писал:
Ты пробовал собирать карту изначально моими компиляторами, собранными шестой студией

Да, это

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 09-11-2022 в 19:43:

Цитата:
Дядя Миша писал:
Ворованными?


Почему? Своими, например из другой копии твоего проекта. Да и ворованные чем отличаются?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 09-11-2022 в 19:47:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 10-11-2022 в 08:55:

Дядя Миша
В любом случае пакетная обработка файлов лишней не будет. Надеюсь у себя ты тоже наследуешь принцип drag and drop вместо дрочева с аргументами и qc скриптами.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 10-11-2022 в 09:56:

Для чего же я по твоему морочусь с редактором? Конечно нужно визуальное редактирование. Но вот этот принцип, когда оно там по тихому шуршит, мне не нравится.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 29-11-2022 в 23:06:

Решил я опубликовать прайм на ModDB
https://www.moddb.com/mods/primext

Добавлено 30-11-2022 в 03:00:

Сегодня мне пришла в голову идея провести странный эксперимент. У меня дома есть ТВ-приставка на базе Android, я поставил туда Termux, затем поставил привычные линуксовые приложения, потыкал, оказался приятно удивлён. Потом поставил git и cmake, и решил собрать праймовские компиляторы прямо на ТВ-приставке, а потом этими компиляторами ещё и собрать карту. Для этого пришлось сделать несколько мелких правок в коде (касательно совместимости с ARM архитектурой) и скриптах сборки, после чего всё успешно скомпилировалось. Я уж не знаю, были ли до этого где-то в природе карты, которые нативно скомпилированы под Андроидом, безо всяких эмуляторов, но теперь одна точно есть.


Добавлено 30-11-2022 в 03:06:

Поскольку у ТВ-приставки и ОС, и архитектура - такая же как у смартфонов, то сбилдить компиляторы карт под любой мобилой, на которой работает Termux не должно составить труда. Если вдруг кто-то зачем-то захочет это сделать, то вот небольшая подсказка со списком нужных команд:

C++ Source Code:
1
pkg install git
2
pkg install cmake
3
git clone --recursive https://github.com/SNMetamorph/PrimeXT.git
4
cd PrimeXT
5
cmake -E make_directory ./build
6
cd build
7
cmake .. -DBUILD_CLIENT=OFF -DBUILD_SERVER=OFF -DENABLE_PHYSX=OFF -DBUILD_GAME_LAUNCHER=OFF -DBUILD_PXMV=OFF -DBUILD_PXSV=OFF -DENABLE_STATIC_LINKING=OFF -DCMAKE_BUILD_TYPE=Release
8
cmake --build . --config Debug

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Ku2zoff 30-11-2022 в 12:35:

Сижу на форуме с мобилы, прикупил-таки после трëх лет с кнопками. Некоторые считают, что за ARM - архитектурой будущее. Я даже не знаю. С одной стороны - низкое энергопотребление и вменяемая многопоточность. С другой стороны, x86_64 в разы производительнее, ей сложные вычисления легче даются. С третьей стороны, архитектура с тысячами ядер, как у видимокарт, ещё производительнее в тяжёлой математике. Что будет наиболее массовым - хз.
Вообще, прикольно, почему бы и нет, ради эксперимента?


Отправлено SNMetamorph 27-12-2022 в 10:05:

Все эти эксперименты более подробно и тщательно описал и оформил в статью
https://habr.com/ru/post/707860/

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 27-12-2022 в 11:03:

Прикольно, возможно это пригодится когда появится больше ноутбуков на ARM. Так сказать задел на будущее.

Цитата:
Ku2zoff писал:
С третьей стороны, архитектура с тысячами ядер, как у видимокарт, ещё производительнее в тяжёлой математике.


Ну вот только Психопат додумался компиляцию освещения на ГПУ вынести, остальные что то спят.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 27-12-2022 в 13:43:

SNMetamorph
Зачем компилировать карты на приставке? то, что это возможно на разных платформах, никто не сомневался - лишь бы памяти хватило. Хотя занятно было бы почитать про портирование на калькуляторы Texas Instruments. Квейк туда ребятам загнать удалось вполне.
Лучше напиши статью, как поднять на ТВ-приставке выделенный сервер.
Или ещё идея: сервер на умной колонке. Плюс интеграция: "алиса, сообрази кросфайр на троих".

Добавлено 27-12-2022 в 08:43:

Цитата:
FiEctro писал:
возможно это пригодится когда появится больше ноутбуков на ARM

Так арм уже ж давно поддерживается, андроид на арм.

__________________

xaerox on Vivino


Отправлено FiEctro 27-12-2022 в 14:26:

Цитата:
XaeroX писал:
Так арм уже ж давно поддерживается, андроид на арм.


Ну вот когда винда будет на АРМ тогда и ога.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено (_-=ZhekA=-_) 27-12-2022 в 15:01:

Цитата:
FiEctro писал:
Ну вот когда винда будет на АРМ тогда и ога.

Есть Win 8 на arm. Она шла на планшете серфейс 2)

__________________
Kiss my ass if you don't like my Ford!
------------------------------------------
Game Area51 Update 1
First Person Shooter Released Jul 24, 2017
The game is a 3d shooter with the elements of the quest.

http://button.moddb.com/download/medium/125531.png


Отправлено FiEctro 29-12-2022 в 12:00:

Цитата:
(_-=ZhekA=-_) писал:
Есть Win 8 на arm. Она шла на планшете серфейс 2)


Ты про Windows RT? Слышал. Ну если бы майкрософт не положила болт на него, может что то и вышло, но на деле мы просто получили ни с чем не совместимую ОС с неработающим магазином приложений. Другими словами - кирпич. Хотя казалось, ну сделайте эмулятор нормальный как у Эппл с М1. Уже хоть как то пользоваться бы можно было.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Luciferchik 30-12-2022 в 01:51:

Автор объясни как запустить сырцы на 19 студии или поделись уже готовыми, а то с этими симейками ничего не понятно

__________________
Sometimes you have to get knocked down lower than you've even been to stand up taller than you everwere.
You so sad. No, i just die everyday...
I can't do anything around here without everybody getting up in my shit...
The aim of life is self-development.


Отправлено SNMetamorph 30-12-2022 в 14:55:

Цитата:
Luciferchik писал:
Автор объясни как запустить сырцы на 19 студии или поделись уже готовыми, а то с этими симейками ничего не понятно

Есть же на гитхабе инструкция. А Visual Studio 2019 умеет работать с CMake проектами.
https://github.com/SNMetamorph/PrimeXT

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Luciferchik 30-12-2022 в 19:48:

Цитата:
SNMetamorph писал:
Есть же на гитхабе инструкция. А Visual Studio 2019 умеет работать с CMake проектами.
https://github.com/SNMetamorph/PrimeXT

Сори иногда туплю прочитать ридми на гитхабе, спасибо огромное

Добавлено 30-12-2022 в 22:48:

Открыть то удалось, а вот скомпилить никак делаю все как по инструкции но опция билд все ровно не активна

__________________
Sometimes you have to get knocked down lower than you've even been to stand up taller than you everwere.
You so sad. No, i just die everyday...
I can't do anything around here without everybody getting up in my shit...
The aim of life is self-development.


Отправлено Ku2zoff 31-12-2022 в 02:07:

Цитата:
FiEctro писал:
если бы майкрософт не положила болт на него

Если бы не было ведроида, то не положила бы. Зачем рвать оппу ради сомнительных проектов? Гуловские кодеры всё отладят на этой архитектуре лет за десять, а потом мелкомягкие просто перекупят этот сегмент компании, и вывалят удобоваримую винду для ARM.


Отправлено FiEctro 31-12-2022 в 08:28:

Цитата:
Ku2zoff писал:
Если бы не было ведроида, то не положила бы. Зачем рвать оппу ради сомнительных проектов?


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

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Alexander Pafos 10-08-2023 в 12:01:

это так и должно быть?


Отправлено SNMetamorph 10-08-2023 в 13:40:

Цитата:
Alexander Pafos писал:
это так и должно быть?

Ты про что? Я вообще не понял тебя

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Alexander Pafos 10-08-2023 в 14:13:

нет аддтивности на модели


Отправлено SNMetamorph 10-08-2023 в 14:23:

Цитата:
Alexander Pafos писал:
нет аддтивности на модели

Пока что я даже толком не тестил, насколько правильно работают рендермоды и всё остальное прочее в старой модели освещение. На данный момент это вообще не приоритетная задача, но в будущем я вернусь к этому.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Alexander Pafos 10-08-2023 в 14:31:

Цитата:
SNMetamorph писал:
Пока что я даже толком не тестил, насколько правильно работают рендермоды и всё остальное прочее в старой модели освещение. На данный момент это вообще не приоритетная задача, но в будущем я вернусь к этому.


я кстати ещё хотел сказать что glowshell не пашет


Отправлено Alexander Pafos 11-08-2023 в 10:25:

ещё я заметил баг с декалями.
кстати чем заменить glowshell на v_ моделях ? может шейдерами или в партикли обернуть?

__________________
настоящий гражданин всегда начинает свою речь со словами: настоящий гражданин всегда начинает свою речь со словами:настоящий гражданин всегда начинает свою речь со словам


Отправлено SNMetamorph 11-08-2023 в 11:40:

Цитата:
Alexander Pafos писал:
кстати чем заменить glowshell на v_ моделях ? может шейдерами или в партикли обернуть?

Можно шейдером, да. Можно вроде бы и люма-текстурами, если я правильно тебя понял. Про этот баг с декалями знаю уже давно.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Alexander Pafos 22-08-2023 в 11:36:

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

__________________
настоящий гражданин всегда начинает свою речь со словами: настоящий гражданин всегда начинает свою речь со словами:настоящий гражданин всегда начинает свою речь со словам


Отправлено SNMetamorph 28-08-2023 в 21:14:

Цитата:
Alexander Pafos писал:
в общем билд от шестого июля вроде самый свежий.

Нет, не самый свежий. Самый свежий 8 июля. Впрочем, в сентябре будет солидная пачка изменений добавлена, и билды новые сгенерятся.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Alexander Pafos 01-09-2023 в 17:15:

Цитата:
SNMetamorph писал:
Нет, не самый свежий. Самый свежий 8 июля. Впрочем, в сентябре будет солидная пачка изменений добавлена, и билды новые сгенерятся.

буду ждать и ещё:
предложения по развитию движка:
1 переименовать env_physbox в prop_dynamic
2 переименовать env_static в prop_static
3 переименовать env_dynlight в light_dynamic
это нужно чтоб не искать эти сущьности среди env_, которых и так много
4 сделать флажок breakable для дверей
5 пeренести все исходные файлы оружия в отдельную папку, как у монстров
6 вынести часть кода из player.cpp, он перегружен, в какой нибудь playerOther.cpp
7 может стоит перенести func_vehicle из кс 1.6?
8 ещё можно прикрутить физику к оружию и аптекам на полу для демонстрации физики .

__________________
настоящий гражданин всегда начинает свою речь со словами: настоящий гражданин всегда начинает свою речь со словами:настоящий гражданин всегда начинает свою речь со словам


Отправлено Crystallize 01-09-2023 в 17:24:

Цитата:
Alexander Pafos писал:
7 может стоит перенести func_vehicle из кс 1.6?

В Диффужене машинки заведомо лучше.


Отправлено Дядя Миша 01-09-2023 в 19:42:

Цитата:
Alexander Pafos писал:
1 переименовать env_physbox в prop_dynamic
2 переименовать env_static в prop_static
3 переименовать env_dynlight в light_dynamic

И папку sound в папку audio

Добавлено 01-09-2023 в 22:42:

Цитата:
Alexander Pafos писал:
ещё можно прикрутить физику к оружию и аптекам на полу для демонстрации физики .

У аптечек-батареек и так всегда была физика. Попробуй их поднять на Use.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Alexander Pafos 02-09-2023 в 10:00:

ну кто-то может и без фгд маппить. А мне неудобно когда самые используемые (у меня) сущности на карте, надо искать среди env_

Добавлено 02-09-2023 в 13:00:

Цитата:
Crystallize писал:
В Диффужене машинки заведомо лучше.

ну так-то дa. Надо их

__________________
настоящий гражданин всегда начинает свою речь со словами: настоящий гражданин всегда начинает свою речь со словами:настоящий гражданин всегда начинает свою речь со словам


Отправлено Crystallize 02-09-2023 в 10:59:

Цитата:
Alexander Pafos писал:
А мне неудобно когда самые используемые (у меня) сущности на карте, надо искать среди env_

Я вот не в курсе, Джек подсказывает тебе нужный класс если начать набирать класснейм на клавиатуре?


Отправлено Ku2zoff 02-09-2023 в 12:30:

Цитата:
Alexander Pafos писал:
1 переименовать env_physbox в prop_dynamic
2 переименовать env_static в prop_static
3 переименовать env_dynlight в light_dynamic

Можно прилинковать второй-третий-десятый класснейм к одной энтите. Останется только сделать новый класс в fgd. Тогда и новое название будет, и старое останется для обратной совместимости.


Отправлено Alexander Pafos 02-09-2023 в 12:38:

Цитата:
Crystallize писал:
Я вот не в курсе, Джек подсказывает тебе нужный класс если начать набирать класснейм на клавиатуре?

ну подсказывает, только сначала совсем другую сущность

Добавлено 02-09-2023 в 15:38:

Цитата:
Ku2zoff писал:
Можно прилинковать второй-третий-десятый класснейм к одной энтите. Останется только сделать новый класс в fgd. Тогда и новое название будет, и старое останется для обратной совместимости.

в csg и rad вроде, проверка на env_static была.
во всяком случае последние слово за метаморфом

__________________
настоящий гражданин всегда начинает свою речь со словами: настоящий гражданин всегда начинает свою речь со словами:настоящий гражданин всегда начинает свою речь со словам


Отправлено Ku2zoff 02-09-2023 в 12:57:

Цитата:
Alexander Pafos писал:
во всяком случае последние слово за метаморфом

Сорцы открыты, можно самостоятельно модифицировать, если очень нужно.


Отправлено SNMetamorph 15-09-2023 в 22:45:

Цитата:
Alexander Pafos писал:
1 переименовать env_physbox в prop_dynamic
2 переименовать env_static в prop_static
3 переименовать env_dynlight в light_dynamic
это нужно чтоб не искать эти сущьности среди env_, которых и так много

Переименовывать существующие энтити точно не нужно, т.к. сломается совместимость с уже готовыми картами.

Цитата:
Alexander Pafos писал:
4 сделать флажок breakable для дверей
5 пeренести все исходные файлы оружия в отдельную папку, как у монстров
6 вынести часть кода из player.cpp, он перегружен, в какой нибудь playerOther.cpp

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

Цитата:
Alexander Pafos писал:
7 может стоит перенести func_vehicle из кс 1.6?

Потом будут машинки с уже полноценной физикой.
Цитата:
Alexander Pafos писал:
8 ещё можно прикрутить физику к оружию и аптекам на полу для демонстрации физики .

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

Добавлено 16-09-2023 в 02:45:

Давно сюда ничего не писал, хотя вроде и было что написать, а вроде и лень всё вспоминать и переводить в текст.
Вкратце, что было сделано в период с лета по сегодняшний день:

1. Переработана имплементация кэширования коллизионных мешей
Теперь игра не будет зависать в рантайме при попытке построить коллизионный меш. Подобная система уже была реализована в P2, однако в ней был ряд недочётов, которые я учёл. После первого просчёта результаты сохранятся на диск, при этом учитывая выставленный body/skin/хэш модели. На огромных картах состоящих целиком из моделей стало сильно лучше. Также, попутно уменьшен расход оперативной памяти, так как инстансы мешей больше не дублируются для каждой энтити, а наоборот, энтити ссылается на готовый инстанс меша по хэшу. Поскольку геометрия в инстансах хранится в пространстве модели, это позволяет нам провернуть подобную оптимизацию.

2. Добавлен удобный API для работы с движковой файловой системой
В прошлом году a1batross вынес файловую систему из движка в отдельную библиотеку (такой же подход используется и в голдсорсе), попутно с этим добавив туда вальвовский интерфейс VFileSystem009. Это оказалось очень полезно как для совместимости с существующими модами сделанными под голдсорс, так и с созданием новых. Ну и на базе этого интерфейса я сделал простой и удобный API для работы с файлами и всем сопутствующим. Хотя там кое-что ещё предстоит доработать. Также, этот API полностью совместим между клиентом и сервером, можно не задумываясь копипастить код из одной части в другую и всё будет работать консистентно.

3. В проект интегрирован пакетный менеджер vcpkg
Поскольку планируется поддерживать ряд различных платформ, менеджмент всех зависимостей вручную превращается в ад. По работе мне приходилось иметь дело с vcpkg, и этот инструмент проявил себя неплохо по своему прямому назначению. Решил поэкспериментировать, сначала внедрил его в свои другие проекты, разобрался детальнее, и в итоге решил также внедрить его в PrimeXT. По итогу никаких проблем с ним не возникло, а также этот инструмент сильно упростил реализацию следующего шага.

4. Интегрирована поддержка PhysX SDK 4.1.2 взамен Novodex SDK 2.8.3
Этот шаг также был сделан в первую очередь исходя из цели поддерживать как можно больше платформ. И заставить работать физику кроме как на винде получилось сравнительно несложно, благодаря пакетному менеджеру. Что касается именно самого кода, поскольку между версиями SDK такая огромная разница, многое пришлось перелопатить. Сейчас всё по большей части работает корректно и стабильно, но остались мелкие огрехи исправлением которых я и занимаюсь в последнее время. Изначально у меня были сроки закончить до зимы, но скорее всего я успею даже раньше.

5. Различные багфиксы, которые мне лень искать в списке коммитов, поэтому подробного описания не будет

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено Decay 16-09-2023 в 14:38:

В XashXT барнаклы выпадают из видимости, когда ниже смотришь. В Прайме проверил — тоже.
(свисающие языки исчезают)


Отправлено Decay 17-09-2023 в 11:55:

В общем в ксаш-моде нет того что было заключено в #ifdef BARNACLE_FIX_VISIBILITY и использования переменной, которой больше нет

code:
float m_flCachedLength; // tongue cached length


Добавлено 17-09-2023 в 18:43:

Это есть в исходниках Ксаша (dlls), но нет у Вальвы
https://github.com/ValveSoftware/ha...ls/barnacle.cpp

xash_build4529_src.7z
change.log:
Цитата:
build 3886
Render: fix invalid frustum culling for studiomodels ( e.g. barnacle.mdl )

Так это получается ДМ сделал, а у Вальвы видимо этот момент в движке находится (?).

Добавлено 17-09-2023 в 18:55:

Вот оно собственно:
https://github.com/FWGS/hlsdk-porta...ls/barnacle.cpp


Отправлено Дядя Миша 17-09-2023 в 12:42:

Я уже и забыл про это

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Decay 17-09-2023 в 13:17:

Цитата:
Decay писал:
у Вальвы видимо этот момент в движке находится

В GoldSrc чисто визуально проверил через r_speeds, отворачивался от моделей — мне кажется в голде вообще нету фрустум-куллинга для моделей.

Добавлено 17-09-2023 в 20:17:

Наверное можно сделать чтобы и контроллеры учитывало, но я такое не осилю
code:
/* ================ R_StudioComputeBBox Compute a full bounding box for current sequence ================ */ static qboolean R_StudioComputeBBox( vec3_t bbox[8] )


Отправлено Дядя Миша 17-09-2023 в 18:11:

В голдсорсе в синглпллере отесечение по фронтальной плоскости. Не по пирамиде

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Prizvan2 23-01-2024 в 10:10:

А есть ли возможность реализации что-то по типу env_screenoverlay, как в сорсе, чтобы вывести на экран игрока изображение?


Отправлено SNMetamorph 28-01-2024 в 00:58:

Цитата:
Prizvan2 писал:
А есть ли возможность реализации что-то по типу env_screenoverlay, как в сорсе, чтобы вывести на экран игрока изображение?

Не знаю как это работает в сурсе, но есть подобная штука
https://snmetamorph.github.io/Prime...unc_screenmovie

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 28-01-2024 в 08:50:

Я думаю можно разметку VGUI вполне бы было хранить в каком нить простеньком файлике, и включать через энтитию. У Бузера был хороший туториал на эту тему, там относительно всё просто и вполне можно вытащить для пользователя. По крайней мере для простого рисования окошек, кнопочек и картинок. Правда я хз как у Прайма обстоят дела с самим VGUI.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено SNMetamorph 28-01-2024 в 23:44:

Цитата:
FiEctro писал:
Я думаю можно разметку VGUI вполне бы было хранить в каком нить простеньком файлике, и включать через энтитию. У Бузера был хороший туториал на эту тему, там относительно всё просто и вполне можно вытащить для пользователя. По крайней мере для простого рисования окошек, кнопочек и картинок. Правда я хз как у Прайма обстоят дела с самим VGUI.

VGUI там в принципе нету. Есть из коробки интегрированный ImGui, на который никаких проблем не составляет найти туториал и документацию.

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Отправлено FiEctro 29-01-2024 в 06:33:

Цитата:
SNMetamorph писал:
Есть из коробки интегрированный ImGui, на который никаких проблем не составляет найти туториал и документацию.


Я так понимаю только через хардкод можно его прописать?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 29-01-2024 в 11:00:

Цитата:
FiEctro писал:
только через хардкод можно его прописать

А что, бывает софткод штоли?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 29-01-2024 в 11:40:

Цитата:
Дядя Миша писал:
А что, бывает софткод штоли?


Файл разметки можно просто в папке с модом хранить, нафига чтобы передвинуть кнопку пересобирать клиент?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 29-01-2024 в 11:53:

Так это и не код вовсе.

Добавлено 29-01-2024 в 14:53:

Это key-value пара.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 29-01-2024 в 13:00:

Дядя Миша
Ну смысл в том чтобы разметку можно было менять не трогая компиляторы. Создавать эвенты в ней, а к эвентам уже обращаться через код или энтитии.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 29-01-2024 в 14:10:

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

Добавлено 29-01-2024 в 17:10:

Т.е. полная data-driven модель.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 29-01-2024 в 16:02:

Дядя Миша
Да по сути это теже объекты с их свойствами как ентитии внутри MAP файла. Это могут быть и теже жесоны, и XML и какие то собственные форматы которые могут хранить разметку. Но лучше конечно использовать что то уже существующее, чтобы тебе не приходилось писать свой редактор ещё и для создания UI, а просто сказал рандомному художнику - запили мне макет в фигме, и он тебе просто кидает файл, а ты загружаешь. Там внутри координаты, пути к картинкам и евенты да потипу как у моделей в халфе. Вообще сами эвенты удивительная вещь, их можно буквально как блюпринты использовать, если конечно у тебя компонентная система.


Кстати в Юнити поступили очень мудро в плане UI. Чтобы не ковыряться в блокнотике и не писать отдельный редактор, они сделали чтобы ты буквально элементы интерфейса мог расставлять прямо на сцене, просто в специальном отдельном объекте Canvas.
https://i.ytimg.com/vi/at6gUB_-HII/maxresdefault.jpg

Но при этом ты его можешь сохранить в префаб и использовать вообще на любой сцене. Либо не удалять когда сцена меняется.

Цитата:
Дядя Миша писал:
Можно в этих эвентах писать прямо имя функции с аргументами, вместо загадочных номеров, каждый из которых необходимо поддерживать отдельно в коде.





Кстати аниматор в Юнити так же на евентах построен. Там вся логика анимации, переходов, смешивания, анимационных слоёв внутри отдельного файла хранится. А из скрипта ты просто ему команды даёшь.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 29-01-2024 в 16:57:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 30-01-2024 в 07:07:

Цитата:
Дядя Миша писал:
Я бы с удовольствием использовал сторонние форматы, если бы мне была близка по духу их идеология. Но я пока что вижу обратное - каждый соревнуется в создании самого отвратительного гавна.



__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 30-01-2024 в 10:05:

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

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено SNMetamorph 30-01-2024 в 14:35:

Цитата:
FiEctro писал:
Я так понимаю только через хардкод можно его прописать?

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

__________________
PrimeXT
GoldSrc Monitor
SMD Splitter
mdl-flip (gFlip analog)
Xash3D Modding Discord


Временная зона GMT. Текущее время 16:50.
Показать все 549 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024