![]() |
Показать все 334 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Paranoia 2:Savior (https://hlfx.ru/forum/forumdisplay.php?forumid=38)
-- Блог разработчика (https://hlfx.ru/forum/showthread.php?threadid=5236)
Блог разработчика
Ну что же. Разработка обновлённой версии P2:Savior 1.51 плавно движется к своему логическому завершению. За прошедший месяц рендерер был сильно переписан, я уже писал об этом на CSM. Перечислю то, что еще осталось сделать:
1. Полная ревизия кода декалей, поддержка декалей на полупрозрачных поверхностях.
2. бета-тестирование обновлённой P2:Savior, исправление оставшихся ошибок.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Паранойя все ещё совместима с Xash3D, или уже пилится параллельно с и для XashNT?
__________________
Xash3D FWGS форк
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Может тогда сделаешь поддержку одной модели пушки для всех трех видов? (VIEW, PLAYER, WORLD)? Это бы намноо ощутимее сэкономило ресурсы.
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Elber пушки-то аттачатся по имени кости. Ты готов унифицировать все скелеты, игрока, монстриков? Вопрос только в этом. Так-то без проблем любая пушка даётся NPC в руки, при условии что скелеты совпадают.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Сменные руки фишка прикольная, правда нужна она разве что в сталкере где есть разные костюмы которые можно надевать или в мультиплеере где есть разнообразные модели игроков, интересно где она найдёт применение в параное, не помню чтобы там мультиплеере был, было бы прикольно увидеть такую фичу в ксаш моде, там на мой взгляд куда проще найти ей применение, в том же мультиплеере в халве куда больше разнообразия моделей игроков, да и в сингле можно было бы реализовать чтобы разные руки были в зависимости от костюма, а тут в основном зомбе и солдаты.
Chyvachok
__________________
Xash3D FWGS форк
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Вообще, конечно, для чего такая экономия на текстурах-то? В Ксаше лимит сильно увеличен на них, и, если надо, его ещё можно поднять. Видеопамять? Ну тоже сейчас менее гигабайта мало у кого осталось...
Добавлено 08-05-2019 в 00:07:
Просто я как думаю: для всех трех моделей если будет какое-то переключение высокополигональной модели от первого лица и от третьего менее детальной. Ну и внешние руки, которые монут быть прицеплены на модель от первого лицо...
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
@Cybermax
Обращайся если нужна будет помощь в чем-либо.
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
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]
ПАРОЛЬ: paladin_solo
Забавно. К идее, которую я озвучивал на ХЛру более 10 лет назад, снова вернулись.
Это про п/в/в-омдели и скелетоны.
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
>стёкла это солидные, непрозрачные объекты
Это как?
__________________
http://www.moddb.com/mods/monorail-quest
Ну чтожы, благодаря вчерашней работе над ошибками, P2 уже частично стартует на Radeon X1600
Там какие-то проблемы с выравниванием half-float в вертексных буфферах, не любит это дело радеон, ох не любит. Вплоть до вылетов.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Окончательно локализовал проблему. Всё дело в том, что X1600 не умеет в халф-флоаты, только эмуляция. Поэтому оно тормозит и вылетает.
Так же добавил декалям параллакс, теперь можно делать дырки в стенах
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну и знаменитый тест параллакса, куда же без него.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша а эта реализация параллакса сильно отличается от того что в 2007 называли Relief Mapping? Ну и там ещё мод на Думтри был.
Crystallize это из кризиса параллакс, рельеф чуть хуже выглядит, но я оставил его функцию, кто захочет сравнит.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Из всех графических фич паралакс самая годная, куда лучше чем всякие выедающие глаза блюры, блумы и прочая мыльная муть, особенно декали с ней, помню в игре Fear и Фолыче 3/Нью Вегас были такие декали, круто выглядит, было бы прикольно если бы ещё декали при накладывании на друг друга объеденялись.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
Скрин как они накладываются? А яма красивая, да.
__________________
http://www.moddb.com/mods/monorail-quest
Ну вот три ямы. Это само-собой получается, поэтому будет корректным далеко не во всех случаях. Самый интересный, вариант, сами понимаете, это декаль с параллаксом, наложенная на поверхность с параллаксом. Хотя конечно и такое тоже возможно.
А ямы кстати так себе, их Элбер за 10 минут нарисовал. Мог бы и красивше сделать.
Добавлено 11-05-2019 в 19:43:
Там по хорошему надо учитывать суммарную глубину всех, наложенных перед этим декалей, а на форварде повторюсь, это почти нереально сделать. Разве что как в той демке - завести хейтмапу на манер лайтмапы и модифицировать её, но это дико неудобно и память жрёт. Такое только для демок годится.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
А на неровных поверхностях и углах оно как, например, если у стыка стены и пола?
__________________
http://www.moddb.com/mods/monorail-quest
thambs декали так не ложаться. Есть такая штука, как Silhouete Parallax Mapping, но в наше время помоему проще сделать тесселяцию по хейтмапе.
Добавлено 11-05-2019 в 21:14:
Ну вот я две декали наложил. Странно-вата выглядит.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Такое бы протев усреднённой нормали зацепленных полигонов проецировать.
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
__________________
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] паралакс это типа эмуляция обьемности, визуально придаёт объема плоской текстуре при помощи нормаль мапы, но она плоской по сути и остается, то есть чисто визуальный эффект, предметы и нас в дырку не будут проваливатся, честную разрушаемость только в ред фекшоне я и видел, правда там далеко не все разрушаемо, а во второй части этих ломаемых стен вообще почти не использовали, игра бы и не изменилась бы если этих стен не было вообще, да и вообще вторая часть только дизайном оружия и управляемый роботом похвастаться, как игра и продолжение первой части она никакая вообще.
Вообще когда я проходил ред фекшоне сложилось впечатление что разработчики никак не могли придумать как в коридорном шутере задействовать эту разрушаемость, особенно во второй части где эти ломаемые стены редкость, в идеале с такой фичей левел дизайн на манер вора или деус экса надо делать где уровни не коридорные, а представляют из себя открытую локацию где игрок имеет разные подходы к выполнению цели, тут имхо проще с такой фичей развернутся, не сильно ограничивая игрока.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
http://www.moddb.com/mods/monorail-quest
Для мелких точечечных объектов можно реально считать глубину этой хейтмапы на плоскости на CPU. У них всё равно нет нормальной физики, достаточно просто .z поддкорректировать и всё. Тем более что эти патроны отродясь и в стены проваливались краями. А персам можно посчитать ИК для хейтмапы. Но это всё уже в NT, я не хочу так глубоко капать в параное, я так её никада не доделаю.
Из новостей:
починил и вернул в строй окклюжены, теперь загороженные зеркала отсекаются и кое-где фпс вырос вдвое.
Добавлено 12-05-2019 в 13:43:
ЗЫ. До меня дошло. Ну просто в трассе читать хейтмапу, трасса уже умеет читать решетки, чтобы пролетать сквозь дырки в текстуре. Ну и тут тожы самое, только для хейтмапы.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Вышел update_7.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Где же он?
В привате, по списку, как я и говорил.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну чтож, вторая параноя полностью работоспособна под Radeon X1600. Правда производительность не блещет. Находится примерно на том же уровне что и у ксаш-мода.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Хотя TODO лист почти не обновлялся, работы идут полным ходом. Я сейчас завершаю ревизию студиомоделей, после чего в статус done перейдет сразу несколько пунктов. Главным образом мне надо разобраться с их освещением. И как следствие - с освещением декалей. Эта новая система подключения юниформов зарекомендовала себя с самой лучшей стороны, всё очень просто и быстро делается. Так же я теперь считаю TBN не для отдельно взятого меша, а для всей субмодели. Это немного дольше, но более правильно. Ну и в связи с этим сглаживание нормалей я выкинул вообще, оно больше не нужно. Там где оно нужно по смыслу, нормали можно сгладить в редакторе, рендерер такую отсебятину вносить не должен.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
nemyax групповое. Но я уже убрал. На первых этапах оно маскировало ошибки в построении TBN, сейчас TBN и так правильный, маскировать ничего не надо.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Проапгрейдил комп на работе, теперь вместо Radeon X1600 стоит GT640.
Извиняйте товарищи с древним железом. На данный момент параноя запускается и относительно неплохо работает на старом радике, но если в дальнейшем что-то испортится, я уже не смогу это проконтиролировать, увы.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Процесс идёт, в данный момент занят освещением студиомоделей.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Товарищи, которые ждут выхода обновлённой паранои - просьба отметиться в каментах ниже. Я хоть посмотрю сколько вас.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
пока потихоньку мапаю под ксаш мод, в ожидании обновлённой парпнои.
Ну что же, вот и заветные декали, которые видно с обоих сторон:
Параллакс сзаду конечно выглядит странно-вата, но зато он выгнут в правильную сторону
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
красиво, теперь можно будет реалистично делать грязь на стеклах и трещины паралаксом.
Ну и моя любимая тема, конечно жы
__________________
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]
ПАРОЛЬ: paladin_solo
А что по теме оптимизации рендерера мира, есть какие-то планы?
Присоединяюсь.
То, что я имел несчастье наблюдать в последнем релизе, исправлено ли?!
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
SNMetamorph всё что можно было сделать в рамках халфовского формата карт я пожалуй что сделал. Тут просто нужен уход в сторону детализации моделями, если вы будете мелкую пакость делать брашами, чуда не случится.
На данный момент работаю над патчем отложенного освещения (патч в смысле альтернативная ветка рендерера).
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
XaeroX У тебя весь PW так освещается?
Картинку с солдатом только верни, а то её только по цитате можно посмотреть.
__________________
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
XaeroX
На слишком сложной world-геометрии и он лажать начинает, проверено.
__________________
http://www.moddb.com/mods/monorail-quest
thambs
Я не говорил, что он не лажает. Я говорил, что он не режет полигоны как попало, как халфовский. А проблемы там возникают уже несколько иного плана.
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
А можно скрин с 100500 лайтами, как это обычно принято показывать для отложки? Она ж и делается главным образом для того, чтобы резко увеличить число лайтов в кадре в сравнении с форвардом?
Добавлено 28-05-2019 в 01:30:
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
81 фпс для 19 лайтов, пусть и бесконечных - мало-вата. Тем более тут реально видно только 3-4, от которых хочется динамику, остальные вполне в статику могут уйти, разве нет?
__________________
Ну вот 32 лайта с тенями.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
А почему написано - 6?
__________________
Я бы еще спонзу показал, но с тенями там фпс ниже плинтуса, а отключение теней на отложке поломано.
Добавлено 27-05-2019 в 22:32:
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Подключил к рейтрейсеру бмодели. Стало поинтереснее
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А бмодель может иметь свои источники света?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Нет, лампочки все статичные.
Для полного счастья осталось только хитбоксы моделей загрузить как капсулы и будут тени от персов. Но это всё я уже оставлю для XashNT.
Здесь - достаточно.
К вопросу зачем это всё нужно, если это неосновная ветка и использоваться не будет. В основном для того чтобы вы его потестировали, привыкли и научились основным методам работы с таким освещением.
Добавлено 28-05-2019 в 16:51:
Ну чтоже. Я почти сделал всё что наметил, кое-что отменил, отложил на будущее. Скоро будет всеобщее бета-тестирование.
Добавлено 28-05-2019 в 20:03:
Настала пора закешировать коллизию и сгенерированный TBN. Параноя адски долго грузит уровни как раз по этой причине. Несмотря на все оптимизации рассчёты коллизии и тбн дело небыстрое. Надо их сохранить на диск.
__________________
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]
ПАРОЛЬ: paladin_solo
Хы. Для спонзы колоизация весит 50 мегабайт. Очуметь можно.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
XaeroX ну это как земля абитованная, все слышали, но никто не был.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Для того чтобы сохранить коллизию в кэш, нужно очевидно построить её в локальном пространстве. Нет,ну в глобальном тоже можно конечно, но тогда на каждую модель на карте придется завести свою собственную копию и хранить эту копию применительно к карте. Я поначалу решил не усложнять и так сделал. Тут же выяснилось, что сдампленная коллизия для той же спонзы занимает почти 50 мегабайт. Я прикинул, что для всей паранои только кэш коллизии займет порядка гигабайта, т.е. сопоставимо с самой игрой и отказался от этой стрёмной затеи. Очевидно надо сохранять коллизию для нулевой позиции\углов и с еденичным скейлом, а трансформировать саму трассу, ну как это вообщем-то делается и для бсп. И тут нас подстерегает очевидная проблема - трансформировать начало и конец трассы проблемы не представляет. А вот как трансформировать ббокс в локальное пространство модели? Точнее говоря, трансформация ббокса тоже не представляет какой-то сложности, но после этой трансформации, если угол не был равен 90, выровненный по осям AABB, естественно увеличится в размерах. Меня такое положение дел не устраивало. Альтернатива - представить наш ббокс игрока в виде 8 точек, но это ведёт к усложнению трасы, тогда нам придётся проверять еще и рёбра. Фактически мы уже имеем дело с частным случаем трассы из дуум3, когда один объект трейсится другим, пусть даже в качестве второго всегда выступает ббокс. Т.е. мне пришлось бы переписывать всю трассу и меня этот вариант не устроил тоже. Тогда я подумал механизм акселерации в качестве 8 оффсетов для сигнбитов плоскости - это ведь фактически и есть наши 8 точек ббокса и я могу его развернуть в эти точки, а дальше использовать их. Логично жеж? Но я не учёл один важный момент. После того как я разверну ббокс, точки поменяют свою полярность, а стало быть изменится и порядок их расположения для выбранных сигнбитов. Как же отсортировать их правильно? На первый взгляд задача решения не имеет. Но мне пришла в голову оригинальная мысль. Для исходного ббокса мы просто меняем mins-maxs местами и набираем наши 8 оффсетов. Стало быть, мы можем инвертировать нашу трансформированную точку ббокса и скормить её функции SignbitsForNormal. Может показаться что это полная бредятина, функция ведь для нормалей, а мы ей даём на вход вертекс. Однако это будет работать и вот почему - во первых наш ббокс без смещения, он локальный даже после поворота. Во вторых он симметричный и отцентрированный. При соблюдении двух этих условий получается что каждая из 8 точек даёт уникальную комбинацию signbits и наши оффсеты сортируются именно в том порядке, в котором и требует наш код коллизии.
Приведу сам код коллизии, чтобы было понятнее о чём речь
1 | // adjust the plane distance apropriately for mins/maxs |
2 | float dist = p->dist - DotProduct( m_vecOffsets[p->signbits], p->normal ); |
3 |
4 | d1 = DotProduct( m_vecStart, p->normal ) - dist; |
5 | d2 = DotProduct( m_vecEnd, p->normal ) - dist; |
1 | // compute a full bounding box |
2 | for( i = 0; i < 8; i++ ) |
3 | { |
4 | Vector p1, p2; |
5 | p1.x = ( i & 1 ) ? lmins[0] : lmaxs[0]; |
6 | p1.y = ( i & 2 ) ? lmins[1] : lmaxs[1]; |
7 | p1.z = ( i & 4 ) ? lmins[2] : lmaxs[2]; |
8 |
9 | p2 = m_transform.VectorRotate( p1 ); |
10 | // NOTE: this is looks silly but it works for some reasons: |
11 | // bbox are symetric and stored in local space |
12 | // signbits are detected normals for bbox side tests |
13 | int j = SignbitsForPlane( -p2 ); |
14 | m_vecOffsets[j] = p2; |
15 | } |
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Психопату интересно. Автор молодец за проделанную работу! BFN хорошо!
Для отложки тени только рейтрейсовые, шадовмап не будет?
Я не особо в курсе, как там работает колоизация, но разве нельзя отделить ббоксы от вертексов? И кэш вершин хранить, как рассказывалось выше, а ббоксы хранить в глобальном пространстве вместе с картой, либо рассчитывать при загрузке? Хотя если приведенный метод успешно работает, то вопросов нет.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А сглаживание поддерживается?
На отложке пока нет, а вообще да.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну чтож, коллизия и TBN успешно сохранены в кэш. Скорость загрузки выросла раз в пять точно. С 10-15 секунд, до 1-2. Теперь у меня остались только декали. Эти декали меня преследуют с 16-го года, я задумал сделать поддержку декалей с альфа-каналом и всё до сих пор никак не соберусь.
Точнее говоря, их же освещать надо. Ну и код декалей на брашах надо отревизить, оно подвисло в каком-то полурабочем состоянии. Впрочем это не займет много времени, полагаю, т.к. б0льшая часть работы уже проделана. Когда декали будут готовы (1-2 дня), начнётся, товарищи самое интересное. Я начну отладку всего кода на прохождении паранои. По итогам этого тестирования и исправления ошибок, я наконец-то выложу первую публичную альфа-версию паранои 1.51, которую я вам обещаю с 2016-го года
Ну обещанного три года ждут, так что тут всё совпадает. Сколько времени займёт само тестирование я точно сказать не могу. Может и полдня, а может и на неделю растянется. Ну вроде как серъезных ошибок быть не должно.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А а освещение партиклов? Я имею в виду динамическим светом, не только от лайтмап
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
>> что лицензия на некоторые текстуры прямо требует не хранить их в открытых форматах на диске
Зачем вообще такое покупать с такими драконскими условиями?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша разве подбор пароля к zip не занимает какие-то жуткие годы?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Темы разделил. Ваша тема про текстуры теперь тут:
https://hlfx.ru/forum/showthread.php?s=&threadid=5270
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Вот ещё что спросить хотел, можно сделать саншафт-эффект от точечных лайтов, как опцию? Ну как лампочка в темном пыльном помещннии
.
Lev вы вот опять начинаете "а сделай то, а сделай это", как будто я вам что-то должен.
Добавлено 01-06-2019 в 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'
Дядя Миша
А зачем же ты тогда вообще что-то делаешь, если ты никому ничего не должен? Сходил бы на речку лутшы, искупался, потом молочка попил... красота!!
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Я лишь спросил, тем более что сами саншафты от солнышка в параное и так уже есть.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша слушай, а если у тебя рабочий рейтрейс, почему не используешь его в хлраде? Неужели он медленнее?
Вообще, когда ты хаял q2pt, типа там медленная трасса, и начал свои эксперименты с рейтрейсингом, я надеялся в итоге увидеть что-то аналогичные для халфы, типа xashpt. Ничего такого не планировалось?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
Сама модель как-то жутко выглядит, мне казалось, что в сталкере рельсы не треугольные были.
А покажи поликаунты, пожалуйста.
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Не ксаш, а Параноя. Ксашевский рендерер на такой сцене покажет 5-6 фпс.
Бутылочного горла в отношении моделей там нет, всё зависит только от видимокарты. У меня GTX650.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А ксашмод?
Дядя Миша
А что за баг с прорисовкой прозрачности у верхушек ЛЭП?
А так впечатляет. 260+ fps на 500к полигонов.
Интересно, какая видеокарта.
Добавлено 02-06-2019 в 14:35:
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
>Ну как если бы ты из брашей сделал здание, там же ты не задаешься вопросом почему игрок не проваливается.
Это bsp делает или сама параноя коллоизацию строит?
__________________
http://www.moddb.com/mods/monorail-quest
Дядя Миша расскажи, пожалуйста, подробнее, как у тебя устроена коллизия с мешами. Для брашей же есть бсп-дерево, плюс они раздуваются под хуллы. Ты же не строишь бсп для меша? И под хуллы их не раздуть, так как могут быть произвольно повернуты.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Повертексное освещение для таких вот уровней - полная дрянь конечно. Первые скриншоты - это деномические солнце + CSM.
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
А декаль "цой - жив " там есть?
А транспарентные модели сквозь такие декали не проступают, как было в предыдущих версиях Ксаша? Проверь!
Добавлено 03-06-2019 в 00:36:
Ну и я так понял, что всё на этой карте это моделями сделано, брашами только коробка. Так ли я это понял?
Размер карты этой в юнитах? Я так на вскидку по скринам не скажу...
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
На вот, скачай церковку эту
https://p3dm.ru/files/architecture/...ubg-church.html
Да поставь на карту. Охота посмотреть, как оно в игре будет. И как можно будет внутрях её побегать...
Архитектура сложная, есть всякие места..
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Для 3д скайбокса вполне достойно выглядит.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
>> да ну её, она в obj. Куда я её приткну, спрашивается.
В .mdl можно собрать.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша
Для колоизации моделек конвексную декомпозицию делаешь?
nemyax при таком подходе она просто не нужна.
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
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]
Ладно, браток. Не хочет тебе угодить Дядя Миша - попробую угодить тебе я.
P.S.: Если понравится и захочется пообсуждать - то лучше сделать это в соответствующей ветке, а не здесь.
__________________
На фоллаут похоже.
Ну чтожы. Приступил к внедрению лайтмап. Я решил не выделываться и заюзать те же самые технологии, которые используются для брашей, тем более что им приходится работать в куда более худших условиях. Модели во впервых уже изкаропки имеют шареные вертексные нормали, которые довольно легко сгладить группой, в отличие от тех же брашей, где сглаженную нормаль приходится высчитывать заново всякий раз когда мы хотим посчитать люксель. На данный момент лайтмапа уже считается для прямого света, правда в карту пока не сохраняется. Но я могу подсунуть туда printf и посмотреть расситанные значения. Лайтмапы будут сохраняться в тот же самый массив, куда сохраняются лайтмапы для брашей, во первых raw-лайтмапа имеет максимальную плотность упаковки, данные просто следуют друг за другом, а во вторых это позволит её загружать теми же средствами, что и на брашах, чтобы не городить какой-то дополнительный огород. Описание фейса с лайтмапой таким образом занимает всего 8 байт - 4 лайтстиля и lightofs. Впереди две основных и одна потенциальная проблема. Во первых это конечно швы. Треугольники мелкие, на часть из них лайтмапа вообще неположена, если считать скейл линейно, но у лайтмапы всегда присутствует клампинг на минимальный размер. Т.е. даже самый мелкий фейс получит лайтмапу 1 х 1 пиксель. С одной стороны это даже немного меньше чем при повертексном освещении, с другой боюсь что будут швы. Ну посмотрим. Второй момент - как посчитать непрямое освещение. Для брашей оно считается при помощи патчей. Простая и изящная технология. Создаём патчи низкого разрешения, решаем СЛАУ обмена энергией и лерпим получившиеся значения обратно к лайтмапе. Казалось бы. Только вот размер патча по дефолту - 64х64 юнита, а в p2rad как и в VHLT - 128х128 юнитов. А теперь скажите мне как это применить на модельку у которой десятки тысяч маленьких полигонов? И сколько по времени это всё будет считаться? И самое главное сколько это займет памяти? 1 патч ~412b. Даже на ту же модельку ЛЭП, в которой 270 тысяч поликов - можете сами посчитать сколько памяти займут эти патчи. Я не говорю о том, что нам еще трансферы надо аллокнуть. Вообщем этот вопрос пока открытый.
Ну и третья потенциальная проблема - вопросы быстродействия.
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
XaeroX
Оно как то конвертируется? Или можно без компиляции любую подцепить?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
Ты и модельки можешь крошить на паччы подобно брашам, почему нет.
Я кстати вчера немного углубился в код X-Ray Engine. Первое впечатление: "ну вот примерно через такую хитрозакрученную жопу оно и работает".
Причём абсолютно же нельзя сказать, что Сталкера писали неграмотные люди. Очень даже грамотные, там и сетевая параллелизация и поддержка частичной компиляции карты и задачи на куски разбиты грамотно. Но вот в результате свет считается неделю. Тут еще вот какое соображение я имею. Грубо говоря 2007-2008, это эпоха Core2Duo. Ему на смену пришёл iCore.
Я поначалу конечно губищщи-то раскатал, щас думал как получу восьмикратный прирост. Но нет, в параллельных задачах за счёт HT прирост действительно в ~2.5 раза, в одноядерных задачах прирост на треть не более. Частота у процов почти совпадает 3.0Ghz у моего старого Core2Duo и 3.1Ghz у "нового" Core i3. Иными словами ждать каких-то чудес по сокращению времени компиляции света в сталкере от обновления железа не стоит, как я понял. Если старое железо считало свет неделю, новое с учётом всех оптимизаций, ну пусть за полдня управится. Но это всё равно чудовищно много. Впрочем сама неправдоподобность этой ситуации (ну как в том видио где автор рассуждает, что на планете живёт не шести миллиардов, а всего 600 человек), меня заставляет подумать что люди как-то необъективно время оценивают или может быть до меня такие слухи доходят. Про компиляцию света в неделю, я услышал от Элбера. Я ему вполне доверяю, но хотелось бы послушать кого-то еще. Кто из вас, форумчан, имел дело со сталкером, компилировал его карты и сколько времени это занимало?
Добавлено 04-06-2019 в 12:34:
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
>> Ну там их просто не было, в модели. И сглаживание было потеряно.
А .mtl файл он подцепил?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro
mtl файл это описание материалов, причём тут нормали?
Он текстовый, я по нему смотрел, какому материалу какой файл диффузки и нормалки соответствует.
__________________
__________________
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]
ПАРОЛЬ: paladin_solo
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Дядя Миша лайтбейкером можно запечь быстро, он и швы удалит. Только нужен паддинг в 1 пиксель вокруг каждого куска.
Или можешь допилить рейтрейс, чтобы забыть патчи радиосити как страшный сон.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Во внедрении разного рода фичей больше всего времени отымают чёртовы подготовительные работы. Саму лайтмапу посчитать быстро. А ты её сохрани, а ты её загрузи и так далее. Слева - лайтмапы для брашей. Справа - браши + модели. Цветные точки - судя по всему какая-то порча памяти.
Дальше начинаются неприятности. Для моделей со стрипами, как вы понимаете лайтмапу кусками загрузить просто невозможно - уникальный вертекс перестаёт быть уникальным из-за того, что координаты лайтмапы не совпадают. Очевидное решение - дестрипификация. Это очень простая операция, её можно выполнить при загрузке, но сами понимаете, модель с FAN-секвенциями будет рисоваться гораздо медленее. Впрочем, нам ведь пока что для теста. Просто поглядеть что у нас там получилось такое.
Добавлено 06-06-2019 в 00:14:
Ну чтож, самый первый скрин - для истории.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ого, лайтмапы для моделей это круто, хотя на ту возню с артефактами что ты подписался не позавидуешь. И почему столько пустого места пропадает зря?
И ещё такой вопрос, по картинке видно что сегменты лайтмапы прилегают вплотную друг к другу, не будут ли они вылазить тексели из других сегментов при сглаживании?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
nemyax
Вроде как для лайтмапы делается собственная развертка
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Вообще говоря FBX, с которым нереал работает, мультиразвёртку держит. Чё бы её не уметь такому мегадвижку, непонятно.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
В УЕ поддерживается мультиразвертка, вы чего
ncuxonaT yeч сам её генерит?
__________________
Вообще говоря, если отмотать на начало апреля, когда я вернулся к работе над параноей, я предполагал, что мне надо просто исправить несколько ошибок и самое главное - сделать освещение для декалей с альфа-каналом, поддержку которых я вообще вводил для мода Креазота в своё время, т.к. у него были там именно такие декали. Причём ввёл я их тоже примерно в 2016-м, а освещение сделать так и не сподобился. Теперь по итогам работы за два месяца, что было сделано:
1. исправлена целая уйма ошибок и несуразностей.
2. подключены поз-параметры (ну как в сорсе), для мультивей блендинга
3. рендерер переписан таким образом чтобы сортировать полупрозрачные поверхности на полигональном уровне (иными словами стёкла и каждая частичка партиклей - это элемент для сортировки). То есть теперь не будет ситуации, когда вспышки от взрывов или выстрелов не было видно за стеклом.
4. внедрена новая система парсинга юниформов, позволяющая подключать их в шейдере без написания ответной части в движке (движок подхватывает автоматически), что в свою очередь дало толчок сделать шейдерам ревизию и красиво всё упорядочить, сведя к минимуму вариации нерабочих эффектов. К тому же появилась мощная система отладки, если юниформ был использован в шейдере, но движок его не подхватил. Это тоже очень удобно, раньше приходилось гадать.
5. проведена ревизия отложенного рендерера, исправлены ляпы, ошибки, оптимизировано быстродействие, трасса научилась трейсить подвижные брашевые модели (и давать от них тень как следствие).
6. полностью переписан и оптимизирован код декалей на моделях, переведён на VBO.
7. поддержка декалей на стёклах (ну в смысле их видно с обоих сторон). На этот раз сделанная правильно.
8. Исправил и переписал код окклюжен-куллинга, чтобы он работал правильно
9. Внедрил рекурсивные зеркала из ксаш-мода.
10. выкинул старую мультиточечную систему освещения студиомоделей, поскольку теперь есть альтернатива в виде повертексного освещения.
11. Переписал все пост-эффекты, исправил ошибки. И кстати сделал возможность установить дефолтный фов, отличный от 75.
12. провёл ряд мероприятий улучшающих совместимость со старым железом (минимальный порог. напоминаю GL 2.1). Параноя начала запускаться на радионе X1600.
13. Выявил узкие места как в общем быстродействии, так и в загрузке уровней и микрофризов во время игры, предварительно закэшировал шейдеры, повертексное освещение, исправил баг в движке, который применял ко всем текстурам эмбосс с нулевым фактором, сдампил на диск коллизию и TBN. А сам TBN рассчитал применительно ко всей субмодели, что в некоторых случаях должно исправить швы спекуляра между мешами. Впрочем я артефактов спекуляра уже давно не видел.
14. Добавил поддержку параллакса для декалей, например для всяких ям.
15. Добавил BestFitNormals для предотвращения их деградации.
16. Приступил ко внедрению лайтмап на моделях, планируется так же поддержка ландшафтов и расстановки травы, что логично.
ну и разумеется, разумеется, до освещения декалей с альфа-каналом руки у меня не-до-шли
Добавлено 07-06-2019 в 15:58:
А самое смешное, что Креазот, ради которого я собственно и начал когда-то внедрять эти декали, окончательно потерялся и по слухам перешёл на Unity.
Добавлено 07-06-2019 в 16:03:
PS. Выкидывать эти декали нет никакого резона, потому что параллакс только с ними и работает. А для серых декалей, это выглядит как яма с полупрозрачной поверхностью над ней.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
XaeroX там есть автоматическая генерация, но, как я понимаю, она просто перепаковывает куски из первого канала развертки (который для диффуза и прочего), чтобы не было наложений и между кусками было достаточное расстояние.
https://docs.unrealengine.com/en-US...maps/index.html
__________________
Дядя Миша можешь подробнее объяснить про автоматическое подхватывание юниформов? Чо-т не могу понять смысла.
Элбер мне говорил какую-то совсем уж дикую вещь, но я вероятно его не так понял. Он говорил что развертка лайтмапы хранится в самой модели, следствие на карту можно поставить только одну такую модель и вот на нее лайтмапа ляжет правильно, а на всех остальных - уже нет. Но повторюсь, я наверное его неправильно понял.
case UT_DEPTHMAP: |
u->SetValue( tr.screen_depth ); |
break; |
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Дядя Миша понял. Да, удобно, надо будет тоже подобное запилить.
__________________
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
XaeroX лайтбейкер, пбр вьювер моделей, демки всякие, те же облака.
FiEctro стал бы я огород городить, если бы одинаково было.
Elber не понимаю, какую мысль ты хотел донести. Чем больше модель, тем выше разрешение лайтмапы нужно? Ну а как иначе-то?
ncuxonaT
Ну так заведи уже тему о своих проектах. Народ должен знать героев в лицо.
__________________
__________________
Ты топчешь мир своими ботинками,
Не замечая куда наступаешь,
А время от тебя уходит цветными картинками,
Но ты даже этого не понимаешь.
Компрометирую данные своей учётной записи.
ЛОГИН: Ghoul [BB]
ПАРОЛЬ: paladin_solo
Наилучшие результаты получаются с халфовским принципом построения матрицы лайтмапы - т.е. из матрицы исходной текстуры. Вероятно это происходит потому что некоторые моделлёры любят накладывать текстуру на треугольники, образующие квад реверсивно. Одна туда, другая обратно.
Впрочем я не моделлёр, это только догадка. И да, я протестировал пока что лишь одну модель, представленную на скрине. Здесь же выявилась резкая зависимость от texture_step. Так, например при texture_step 8 и 4 (как на скринах) всё отлично, а вот на разрешении 2 - лезут артифакты, хотя должно происходить обратное. Ну вот пока так, я еще не разобрался почему. Радиосити пока тоже нет.
__________________
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]
ПАРОЛЬ: paladin_solo
А зачем вообще брать UVшку текстуры для лайтмапы 0_о?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
не забывай что иногда несколько координат одной UV могут перекрывать друг друга (используется для повторяющихся деталей), как в таком случае будет рендериться лайтмапа?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Это уже не имеет значения, геометрия разворачивается в фан-секвенции с дубликатами вертексов.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Может конечно глупость скажу, а что если интерполировать освещение на полигонах на которые не попали лучи к тем на которых всё ок? Типа как это делает DDS между пикселями.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro не всё можно интерполировать и получить при этом вменяемый результат. Интерполяция это всё-таки линейная штука, а между упрощенным мешом и его точной копией - явная нелинейность. Можно конечно сделать интегрирование, но мне что-то подсказывает, что по времени это будет сопоставимо с честными рассчётами. Я уже молчу что простое разблуривание лайтмапы увеличивает время работы вдвое. То есть даже обычный блур по гауссу - далеко не такая безобидная операция как кажется на первый взгляд. На той же ЧАЭС, к примеру, я подвёл некоторую статистику, так вот в самом минимальном разрешении лайтмапы мы имеем пять миллионов люкселей. И лайтмапа выглядит как говно, люксели в несколько раз больше игрока. Увеличения разрешения кратные, т.е. следующий шаг уже 25 миллионов люкселей.
Добавлено 09-06-2019 в 14:40:
Для тех кто от темы совсем далёк, поясню на простом примере. Линейная интерполяция - это нахождение среднего значения между двумя точками.
Ну очевидно между точками упрощённого меша и точками высокополигонального. И уже здесь нас поджидает первая (но далеко не единственная засада). Кол-во этих точек не совпадает - на грубой геометрии может быть одна точка, на точной - 10-15. Но прикол даже не в этом. Плотность точек нелинейна, она сильно зависит от детализации исходного меша, взять тот же чаэс, в упрощённом виде у нас здание четвёртого энергоблока в виде кубика из 12-и трианглов, на котором гордо возвывшается сверх-детализированная труба. Апроксимация, очевидно будет выглядеть как кубик с усечённым конусом. И вот перед нами фактически неразрешимая задача - перенести лайтмапу с этого конуса на детализированную копию трубы. Не пытайтесь решить эту задачу, она не имеет решения. Потому что быстрый перенос даст даже не просто отвратительные, а неверные результаты, а перенос с интегрированием и любые другими ухищрениями по времени рассчётов опасно приблизится к честному и весь огород станет под сомнение.
Добавлено 09-06-2019 в 14:42:
И это я еще не упомянул что лайтмапа по честной геометрии сама по себе - приближение и интерполяция, потому что её разрешение заведомо ниже, чем например у динамического освещения. То есть мы делаем приближение приближения.
Добавлено 09-06-2019 в 14:50:
Наверное я пока это дело оставлю. То что у меня получится в конечном итоге всё равно меня не устраивает по уровню качества, а совместимость мешает всё это реализовать другими методами.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
Может тогда в самом компиляторе моделей сделать подготовку? Посути для халфы никто не делал моделей с лайтмапами, так что в этом вопросе совместимость впринципе и не нужна.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
FiEctro ну можно АО запечь разве что, как в сорсе.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
ncuxonaT
Наверное имеет ввиду что во время моделинга их зеркалят для симметрии.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
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
Как говорил Шерлок Холмс - а почему бы и нет?
__________________
Вообщем тут выяснились леденящие душу подробности. Всё это время world-позиция моделей в компиляторе, да и в колоизаторе тоже считалась неправильно, фактически секелет для статиков строился исходя лишь из дефолтного положения кости. Этот код был написан еще до выхода первой версии второй паранои, еще для ZHLT. Почему жы это было незаметно? Очень просто - у статиков анимация чаще всего по нолям, т.е. никаких смещений там нет. Но наш Элбер, при конвертировании взял за моду писать в QC не $origin 0 0 0 90, который бы применлся к костям, а наоборот - прописывать rotate 90 в настройках секвенции и кажется в этом еще Flash был замечен. Вот оно и выходит, что если моделька была сделанная с нуля, то там естественно никаких вращений анимации не было и всё работало корректно. А если было вот такое вращение, то происходила какая-то херь, но вы же понимаете, что заметить это на размытом вертексном освещении, или на колозации, на очень небольшом числе моделей было попросту невозможно. Плюс не забывайте, что ни один вьювер, в том числе и мой не умеет показывать дефолтное положение скелета без предумноженной анимации, ну это попросту никому не нужно. И вот можно сказать только тогда, когда я занялся этими чёртовыми лайтмапами, тут-то так сказать вся страшная правда и вылезла на ружу. А я уже второй день понять не могу что за чертовщина происходила. А оно вон что оказывается.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
Не потому ли у солидных env_model-ей кревые габариты?
Ну чтош, после устранения всех ошибок (не только вышеописанной, были и другие, непосредственно касающиеся лайтмап), других мелочей и ряда экспериментов я готов даже признать что оно не так уж и плохо выглядит.
Вот регулировка качества лайтмапы texture_step от 2 до 64.
Я кстати уже и бамп подключил. Потом покажу.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А швы на рёбрах как то сгладить можно? И всётаки хотелось взглянуть как откомпилится спонза.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Нечто из серии парных картинок на тему - как бы я хотел чтобы это выглядело:
и как это выглядит сейчас
Добавлено 10-06-2019 в 18:59:
ЗЫ. спонзу как-нибудь потом, када радиосити приделаю. А чтобы приделать моделям радиосити видимо придётся весь компилятор переписывать.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
На зданиях где сложная геометрия, вроде как легло нормально, а вот на ландшафте какой то бред. Особенно на холме в дальнем конце откуда тень?
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
Дядя Миша а в раде свет от солнца идет с учетом ламберта или нет?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Так. Надо будет еще затестировать ворлдлюксели из Q3 с учётом исправленных ошибок и пока отложить всё это дело в сторонку. Потому что такими темпами это снова растянется на неопределённое время. А уже пора бы получить обратную связь от сообщества. Освещение декалей я кстати тожы так и не сделал, но уже хрен с ним, попозже доделаю.
Вообщем план такой:
1. собираю новый архив второй паранои, с учётом всех исправлений.
2. прохожу сам, исправляя то, что недоисправлено.
3. выкладываю вам на тестирование + SDK для творчества.
Я уже много раз всего обещал и каждый раз оно откладывалось-затягивалось, поэтому уже боюсь называть конкретные сроки, но планирую выдать на этой неделе.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ждём) Имеет смысл пытаться запустить это на GF6800?
Lev да, всё должно работать.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша ну тогда будет тест на моём допотопном ящике. К слову, первая параноя в связке с Ксаш-движком там идёт отлично.
Приступил к сборке бета-версии. Очевидно надо пройти вторую параною, попутно исправляя возникающие ошибки и докладывая недостающие ресурсы, ну или подменяя их на затычки. Как только допройду, можно сказать что бета-версия готова.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Первое прохождение успешно завершено, монстры не застревают, поправил ряд огрехов. Вторая итерация. Што-то я там с партиклами не то сотворил, дым синий и переодически вылеталкер из-за этого.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Поправил освещение партиклей и вылет. Думаю второго теста вполне будет достаточно. Играется хорошо, тормозов нет.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Прошёл второй раз, поправил еще несколько мелочей. Ну в принципе - достаточно. Буду собирать вам бета-версию. Но сперва надо выложить обновления движка и ксаш-мода.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну вот, выдалась свободная минутка и я прикрутил наконец-то полноценные ворлд-люксели из кутри к лайтмапам на моделях (слева классический подход, где текстурная матрица превращается в лайтмапную, справа истинные ворлдлюксели).
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Что из себя представляют ворлд-люксели?
Кстати, если будет интересно, как я удаляю швы, ответ "вот так":
https://www.sebastiansylvan.com/pos...esTextureSeams/
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Z по дефолту.
Добавлено 22-06-2019 в 11:57:
Ну чтожы, апробывал новый тип лайтмапы на ЧАЭС. Мне очень понравилось. Тени стали красивые чоткие и без швов. Так что вероятно выложу обновление.
Добавлено 22-06-2019 в 12:39:
Это конечно не радиосити, но кто там разберёт?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша то есть просто проекция на одну из координатных плоскостей в зависимости от нормали?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Психопат всё интерисовался насчёт консвервативной растеризации, отвечаю как я разрешил эту задачку. Правда тут надо учесть что для классического лайтбейкера некоторые вещи неактуальны, но всё же.
Как я уже и говорил, лайтмапа у нас в любом случае квад или прямоугольник, потому что картинка. Размеры вычисляются вписанием треугольника в ббокс. В идеальном случае (брашы) у нас квадратный полигон соответствует квадратной лайтмапе. Но в случае моделей естественно так не получается. Зато каждому трианглу всегда соответствует обратный и мы в принципе можем посчитать лайтмапу для их суммы, но в моём случае это нереализуемо, поскольку лайтмапа хранится не в атласе, а в виде raw-массива. То есть с избыточностью данных придется смириться. Вторая проблема очевидно - для пары трианглов образующих квад с высокой долей вероятности будет выделена идентичная по размерам лайтмапа и свет придется посчитать для каждой. Что автоматически означает двойную бессмысленную работу. Наиболее характерный пример - тот самый вагончик. Если бы я уменьшил лайтмапу в движке до 256х256, то вы бы увидели в атласе (r_showlightmaps), что вот та тень с окошками на полу присутствует в двух экземплярах, для одного и второго триангла пола соответственно. Оно конечно и на большой лайтмапе видно, но там глаза сломаешь. Это конечно не дело. Код подготовки лайтмапы к рассчёту имеет встроенные средства для отсечения лишних точек - массив occluded. То есть неважно по какой причине точка стала невалидной, нам важно что для нее свет не будет считаться. В самой халфе идёт проверка на попадение люкселя в солидный лиф, но как легко догадаться на карте из одних моделей это бессмыленное условие. У моделей нет никаких лифов и вообще нет дерева. Проще всего проверить границы треугольника построением барицентрических координат и проверкой на выход из их границ. Собственно это я и сделал. Второй положительный момент - барицентрические значения можно использовать для лерпинга нормалей и получения сглаженной фонг-нормали. При таком подходе скорость работы вырастает вдвое, однако, поскольку мы отсекаем пиксели по краям треугольника, легко догадаться что эти самые края обведутся чёрной каёмкой. Причём чем меньше разрешение лайтмапы - тем больше эта каёмка. Для борьбы с этим тоже есть два метода. Во первых старый вариант из кутри - найти у occluded-пикселей 9 соседей и взять с них значения по average. Размер фильтра невелик, поэтому оно почти всегда даёт идеальные результаты. Но легкая "тень" от шва всё равно еще может присутствовать. Второе решение - эмпирическое ввести вокруг трианглао охранный бордюр. Барицентрика имеет в виду границы менее ноля и более еденицы. Вот к ним и надо прибавить наш борюдр. Обычно это значения от 0.1 до 0.5. Чем выше значение - тем меньше вероятность артфектов и тем меньше выигрыш по скорости, потому что мы опять начинаем считать потенциально невидимые люксели.
Впрочем даже со значением бордюра 0.5 у нас двухкратный прирост по скорости (а со значением 0.0 - трёхкратный). Если надо, я может потом скриншотами проиллюстрирую.
Так же выяснилось что китайский блур для трианглов абсолютно не годится, он провоцирует на них швы. Его конечно можно заменить на обычный box 4x4, но вы же понимаете, что это придется лайтмапу увеличить вдвое, а значит и время работы возрастёт во столько же. Блур китайский тем и хорош, что там нет линейного увеличения размера от фактора.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну чтожы, внёс все необходимые исправления, подключил радиосити для моделей, поставил на компиляцию. Затрудняюсь сказать сколько это займет времени. Но несжатая лайтмапа по прикидкам весит около ста мегабайт. От такие пирожки. З котятамi.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Всё никак не доберусь до финального компила. Но промежуточные результаты всё лутьшы и лутьшы. Плюс, поскольку Ксер починил джек, Элбер смог добавить на карту воду в отстойники, лестницы, Сидоровича и сталкеров.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша я сначала тоже так делал, чтобы значение "occluded" пикселей бралось из соседних, но это не работает, если соседних нет. Какой-нибудь тонкий треугольник вообще не имеет нормальных пикселей, все "occluded", и пока, освещение брать неоткуда.
Вариант с барицентрическими координатами непредсказуемый. Непонятно, с каким коэффициентом их надо пячить, чтобы гарантировано покрыть граничные пиксели.
Сейчас сделал второй вариант отсюда, на первых тестах результат хороший.
Пячу каждое ребро на полудиагональ пикселя (на всякий случай чуть больше), направление которой лежит в том же квадранте, что и нормаль этого ребра. И клипаю прямоугольником.
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
XaeroX эммм, но про брашы речь не шла. Но если ты трианглы смержишь в квады, то лайтмапа ляжет на них лутьше.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
почему на зданиях лайтмапа темнее, чем на земле?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша а сколько весит лайтмапа чаэс? Без директа, только свет.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша выходит, лайтмапа меньше, чем 4к х 4к? Ну значит консервативных точек будет, может, 600к.
Ну пока что да, там три лайтмапы 2048х2048. Но повторюсь, Элбер подогнал недостающие запчасти от карты. Лайтмапа думаю легко дойдет до 150 мб.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Поскольку последние изменения затронули формат лайтмап на моделях, да и вообще потому что перед любыми фундаментальными изменениями неплохо бы сохраниться, я вам скоро выложу обнову ЧАЭС и самой паранои естественно.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
В рамках подготовки к столь масштабному компилу оптимизировал память - в структуре sample_t позаменял vec3_t на half_vec3_t. Визуально отличить невозможно, а вот потребление памяти упало почти вполовину. Надеюсь мне хватит этого, чтобы уложиться по лимитам. В пользу этого говорит еще и тот довод, что ЧАЭС, даже по меркам самого Сталкера - это самая гигантская карта и если уж скомпилится она, то остальные тем более.
Добавлено 25-06-2019 в 16:20:
ЗЫ. замена на байты уже не даёт такого выигрыша, поскольку в структурке присутствуют еще и другие переменные, то есть даже вполовину не выгдать. А тут практически бесплатная оптимизация по памяти получилась, время работы не изменилось, качество лайтмап не изменилось. Такие дела.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А то что объекты сквозь землю проваливаются? Непофиксить?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Моя идея с заменой на халфы оказалась удивительно в тему. Там где бы я ранее гарантировано вылез за лимиты памяти 32 бита, здесь еще и места осталось прилично. А вот с рейтрейсом на SSE из сорса не сложилось - оказался втрое медленнее моей трассы. Выкладываю скриншоты полного компила. Время рассчёта 2 часа 2 минут.
В принципе задача выполнена. Я вам соберу обновлённый пак тестовых карт и выложу компиляторы.
Добавлено 26-06-2019 в 00:17:
Ну што. Я когда-то давно уже говорил, что надо бы провести стресс-тест на реальных сталкеровских уровнях. Ну вот и провели.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
В рамках теста запилил AABBTree для трассы мировых полигонов. Мне стало интересно насколько она медленее каноничной халфовской трассы. Там считается вторичка для солнца по полусфере, на каждый люксель приходится порядка 16386 трасс, то есть даже для игрушечных карт это вполне серъезная нагрузка. Ну что сказать?
Оригинальная трасса работает 3.29 секунд.
Хвалёный рейтрейсер из сорса на SSE - 7.77 секунд (здесь комбинированный режим одна трасса оригинальная по кушному дереву + 16386 трасс рейтрейсером).
AABBTree - 19.47 секунд.
Что из этого следует? В настоящий момент трейс студиомоделей как раз и базируется на AABBtree. То есть возможно его ускорить рейтрейсером. И ЧАЭС будет считаться не два часа, а всего час. Вообщем еще есть куда оптимизировать.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
Не знаю я почему SSE-рейтрейсер такой медленный, потом озвучу варианты.
Он работает, но не так быстро как хотелось бы. Попробую написать свой рейтрейсер, KD-три возьму из сорсовского, а саму трассу уже свою заюзаю. Плюс, оригинал писался каким-то посторонним человеком, который его тестировал на растеризации
Это вообще гениально ящитаю. При растеризации мы выпускаем пучки параллельных лучей и это прекрасно кэшируется и SSE себя отлично чувствует. При рассчёте лайтмапы мы в лучшем случае пускаем небольшой пучок (зависит от разрешения лайтмапы) параллельных лучей, а для солнца по полусфере - во все стороны. То есть вся оптимизация идёт прахом.
Я не особо шарю в SSE, то есть научиться писать на этом асме несложно, а вот сделать так, чтобы оно еще и ускорилось - это уже не для меня. Поэтому будем оптимизировать старым индейским способом.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Спонза с лайтмапами на моделях:
грязновато конечно
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Я сначала подумал что сам меш спонзы целиком загрузили, но как оказалось это теже браши просто на модельках ткани лайтмапы. Выглядит ничего так, получше вертексного освещения.
__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
Но грязи на лайтмапах быть не должно, вот что.
Между прочим, этот ваш хвалёный q3map2 он што делает? Он на мелких поликах аппроксимирует люксели с вертексного. А у меня значит при малых разрешениях лайтмапы там артефакт на артефакте, ну понятно.
Добавлено 27-06-2019 в 13:45:
Впрочем ладно, сперва надо с рейтрейсером разобраться.
Добавлено 27-06-2019 в 17:42:
Рейтрейсер, я починил, если кому-то интересно, но непонятно - в сорсе лайтмапы рейтрейсер считает, папка raytrace в SDK. Типа такое ускорение по сравнению с медленной кудвашной трассой. Я не готов сделать окончательный вывод, тут слишком много факторов. Может быть в вальве не дружат с SSE. Камрад Ксерокс неоднократно мне на это намикал. Может быть KD-tree для этих дел не слишком годится. Может еще какие-то факторы. Я переписал его с SSE обратно на FP, справедливо рассудив, что раз уж он медленее на SSE, то тут либо лыжы такие, либо шестёрка ни спровляется. Забегая вперёд, скажу, что дажы после всех моих апчхимизаций скорость его работы что на SSE что на FP, осталась идентичной. Хотя я юзал эти стримы, групповые трассы и прочие ништяки, но что-то у меня так и не заладилось. Тут видимо дело в следующем. Рейтрейсер строит дерево разом для всего мира и всех моделей. Ну можете себе представить какого размера будет это дерево. А у меня - маленькие деревца для каждой модели. И трасса их отсекает по ббоксу. И это всегда эффективнее чем траверс по дереву, ну это очевидно. Но оригинальный рейтрейс я не могу разломать на такие локальные трассы - там жы надо группами трейсить по 4 штуки, иначе от SIMD никакого толку. Неустранимое противоречие. Забегая вперёд, скажу, что я получил сопоставимую с моим референсом производительность разбив трассу на отдельные модельки.
То есть примерно те же яйца, плюс-минус доли секунды. Но какого-то профита, сами понимаете это не дало. Что остаётся в такой ситуации?
Надо еще попробовать BSP-дерево из третьего дуума, которое не режет полигоны. Оно там тоже для колоизации и возможно от него будет какой-то толк.Ну в принципе и всё. Если и это не поможет - я умываю руки. Быстрее уже не получится.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну чтож, проверил еще AxialBSP Tree из третьего дуума. На игрушечных картах все результаты идентичные. Тогда мне пришло в голову нагрузить как следует - я разрешил вторичке от солнца трассировать модели и выставил _spread. Тут-то все различия и вылезли на ружу. Компилировал kung.bsp, если вам интересно. Итак, референс с AABB Tree - 56 секунд.
AxialBSP Tree - 1 минута 8 секунд. Переделаный на FP рейтрейсер из сорса - 32 секунды. Так что, как видите - мои усилия были ненапрасны
На картах с моделми, типа ЧАЭС, будет заметный прирост в скорости. Единственное что меня слегка удивило - это то что Axial BSP такой тормозной. Ну правда он не режет полигоны, т.е. это как бы не совсем настоящее BSP. От такие пирожки. З котятамi.
Добавлено 27-06-2019 в 23:45:
PSю все три трассы дают идентичную лайтмапу.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
500 мегабайт это норм. Волатильный компилятор имеет привычку аллокать по 3-4 Гб оперативки на больших и сложных картах. Никаких проблем с этим нет (на 64-битных осях).
А что касается 32-битных... Для игры - ок, а для разработки - надо всё-таки апгрейдиться. Тот же джек на 32-битных иногда падает с банальной нехваткой памяти. Можно конечно уменьшать Undo levels - но лучше всё же обновить комп и поставить хотя бы 8 Гб памяти.
__________________
Перед тем как перейти на 64-х битную компиляцию, надо сперва по максимуму оптимизировать 32-х битную, ящетаю. У тебя вот ЧЭАС не компилится даже на 64-х битах, а у меня компилится на 32х.
Добавлено 28-06-2019 в 12:13:
Кстате. Я вот еще што подумал. Надо трансферы перевести с fixed point на халфы. Возможно радиосити станет полутьшы выглядеть. Но это не точно.
Добавлено 28-06-2019 в 12:19:
На FP там как вы помните вот этот кламп
if( trans > TRANSFER_SCALE_MAX ) |
trans = TRANSFER_SCALE_MAX; |
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
XaeroX ну для теста-то можно увеличить, скринов наделать там, я не знаю. Эти лайтмапы увеличить - одну константу поменять, делов-то. Уж за ради скринов можно было бы вполне. Значит там еще какие-то сложности.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша
У меня есть одна важная черта, в любой азартной игре или казино я умею вовремя остановиться.
__________________
Переиначил тренсферы с unsigned short на half, фактически вопрос только в организации данных, с фиксированной точки на плавающую.
Можете сравнить результат. Отличия видны, если быстро свапать картинки местами. Собственно это вообще единственный визуальный метод сравнения, которым можно пользоваться.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша если каждый треугольник в лайтмапе лежит отдельно, получается, они и рендерятся все по отдельности, так как не имеют общих вершин? То есть всякий там post-T&L cache идёт мимо?
Дядя Миша На моём мониторе только бандинг ползёт. А у тебя что, есть способ свапать местами картинки, не вынимая их из архива?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша тема производительности при этом не всплывала. Минусом этого подхода назывались только швы. А ведь разбиение на отдельные треугольники сильно бьёт по фпс. Плюс еще до половины пространства лайтмапы не используется.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша как шестая студия чувствует себя на 7ке у тебя?
Ну и да, при таком подходе, уже не так уж важно, попал люксель куда надо или не совсем - будет гладенько. Ну это всё для NT задел. Думаете чего я щас тестирую эти рейтрейсеры (чуть не написал стритрейсеры) ?
Мне надо получить ответ на один фундаментальный вопрос - как будет устроена трасса в новом BSP. И соответственно - как сам этот BSP Будет организован. Ну потому что. Лайтмапы, вертексы, индексы, рёбра - я это вообще не считаю какой-то особенностью формата, это ерунда всё по большому счёту. Самое главное - это устройство ускоряющего дерева. И вот вокруг этого дерева мы собсно и пляшем. Особенно под новый год.
Добавлено 28-06-2019 в 20:47:
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Ну чтож, закончил оптимизацию потребления моделей в памяти, прямо совсем сильно ужать не получилось, примерно в два раза, с 560 мегабайт до 220. А дальше начались чудеса. ЧАЭС на новом рейтрейсере считается...
как говорил Задорнов, наберите воздуха в грудь. Готовы?
4 МИНУТЫ
Я напомню, что на обычной трассе это занимает порядка двух часов двадцати минут. Сначала не поверил, думал может ошибка какая, но нет, все лайтмапы на месте. Правда есть некоторые корявости - дырдочки кое-где. Ну то потом уже, надо сравнить с референсом. Не буду спешить с выводами.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Интересно. Причем на 01 например трубы внизу скриншота светлее, что на мой взгляд даже лучше, чем у двухчасового расчета.
Ты мог бы таким образом ускорить P2ST или VRAD?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Можно еще раз в двух словах, чем новый рейтрейсер отличается от старого (не надо говорить, что скоростью)? Глобалки нет?
ncuxonaT
Рейтрейсер в данном контексте - это функция проверки видимости из точки А в точку Б, и ничего более.
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
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'
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Нашёл на старом винте очень древнюю версию паранои - апрель 14-го года. Исходники, тестовые карты. Забавно. Могу выложить.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша Выложи)
Там даже солнце было. Но при этом формат карт еще совместим с первой параноей. И бамп на моделях уже есть.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
А HDR ещё не вырезан? Больше всего нравилась картинка из билдов с ним.
Да HDRL на месте. Надо с Элбером еще посоветоваться.
Добавлено 14-07-2019 в 19:40:
Там еще тени от солнца такие прикольные, на лайтмапу похожы. И не тормозят ведь. Правда на старых карточках сразу вывалится.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша Вам решать, лучше бы конечно текущую версию довести до ума, тогда исходники будут ни к чему. Я например собираюсь юзать развесовку, и потом в старой версии бамп глючный.
Lev
Расскажи чем ты занимаешься, ато уже с 2013 года помню Crane of Duty вроде пилил. Или просто экспериментируешь/ковыряешься с ксашем?
Elber Нет, не эксперементирую, у тебя скайп есть? Или вайбер - хотел с тобой поговорить.
Lev
Ну ты уже миллион лет как у меня в скайпе в контактах. Скинул в приват.
Элбер не против, как я понял, главное говорит чтобы там исходников карт не было. Всё забываю собрать. Ну может сегодня вечером сделаю.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Временная зона GMT. Текущее время 05:21. | Показать все 334 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024