HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > Новая версия VHLT с поддержкой теней от студиомоделей
Бета-тестирование
Страницы (6): [1] 2 3 4 5 » ... Последняя »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Новая версия VHLT с поддержкой теней от студиомоделей

Вначале немного истории, как эти компиляторы вообще образовались.
Как вы наверное помните, изначально я вообще не собирался копаться в китайских компиляторах. Точнее я добавил поддержку BSP31, и попросил китайца, чтобы он включил её в официальные билды. Ну и заодно поддержку делюксмапы. Он всё это сделал, примерно с 32-й версии это попало в релиз и я думал, что на этом больше их трогать не понадобится.
А потом, как вы наверное помните я приступил к разработке второй паранои.
В процессе работы над ней понадобилась доп. информация, тангент-спейс для бампа, кубемапы, и самая интересная фича - поддержка теней от студиомоделей. Это всё было оформлено в виде некоего расширения формата (ну примерно так же Ксерокс сохранял новую инфу в HLFX 0.6) и я забыл об этом почти на год. Но в этом году произошли некоторые изменения приоритетов, в частности остановка разработки XashNT и возобновление работ над новым рендерером паранои, который будет включать в себя такие интересные вещи, как например ландшафты. Тогда я уже всеръез задумался о том, что мне нужен некий универсальный формат-надстройка, который не будет отменять старые наработки, не будет ломать совместимость и будет работать во всех модах под ксаш без исключения, а не только в параное. Важным моментом было еще и то, что мне надо было сохранить совместимость со старым расширением уровней паранои, которая уже была зарелижена (интересно вот эту херню, которую я щас написал вообще читает кто-то или сразу тыкают скачать?).
Так или иначе, я выполнил все эти условия и получил на выходе тотальное обновление компилятора. Забегая вперёд скажу, что совместимость с халфой никуда не делась и тени от моделей будут работать и под голдсорсом тоже. На данном этапе мне хотелось бы протестировать баги нахождения рабочей директории игры (и соответственно возможность загружать модельки для отбрасывания от них теней). Возможно всплывут и какие-то другие баги, посмотрим. Когда мы всё это оттестируем, я выложу исходники компилятора и вы наконец-то сможете собрать его в 64 бита, дать товарищам с форума свенкупа итак далее. Я единственно чего боюсь, чтобы они меня не приняли за второго китайца и не начали задалбывать реквестами.
Теперь немного расскажу об изменениях в новой версии (сравнивая с VHLT34).
1. расширение формата. Расширение это набор новых лумпов, который может будет как в версии для халфы (халфа его игнорирует), так и BSP31.
В основном для использования различными модами. Но частично используется и самим движком, например для регулировки качества лайтмапы.

2. возможность регулирования качества лайтмапы на отдельно взятом браше, а так же возможность изменения субдивайда на отдельно взятом браше. Это масштабируемый механизм, вы можете задавать как глобальные параметры для всей карты (в настройках worldspawn), так оверрайдить для отдельно взятого браша\энтити (для браша, который часть уровня его следует поместить в func_group).
Настройки:
zhlt_texturestep - определяет кол-во текселей на люксель. От 2 до 64.
2 - сверхчёткая лайтмапа, 64 - больше похоже на вертексное освещение.
Для халфы дефолтное значение 16, для BSP31 - 8.
zhlt_maxextent - шаг субдивайда. От 8 до 128. Работает в паре с zhlt_texturestep, поэтому субдивайд считается по простой формуле:
(zhlt_texturestep * zhlt_maxextent) - zhlt_texturestep
Пример для халфы
(16 * 16) - 16 = 240;
Пример для BSP31
((8 * 64) - 8 = 504;
получившееся значение - это через сколько юнитов будет следующий разрез. Легко догадаться, что чем реже разрезы, тем меньше полигонов и тем быстрее скорость отрисовки уровня. В халфе работать не будет, только лайтмапа съедет. Работает в Xash3D и будет работать в XashXT и Paranoia (но на данный момент обновления еще не вышли).

3. Тени от моделей. Эта фича работает везде, но с небольшими оговорками. Во первых надо понимать, что модель берёт освещение с пола, а если на полу будет тень, то она может сильно затемнить модель. Из этой ситуации умеет выходить только параноя с очень сложным лайтменеджером, но в других модах возможны косяки освещения. Будьте бдительны. В крайнем случае юзайте effects 16, чтобы модель брала освещение с потолка. Этот лайфхак годится и для ксаша и для халфы. ну опытные мапперы про него и так в курсе.
Настройки:
Для env_static в ксаш-моде и параное тени включаться автоматически, а для всех остальных модов есть параметр
zhlt_studioshadow (0\1)
самое главное, чтобы у энтити в поле model был прописан путь к модели.
Остальное уже на ваше усмотрение. Можете даже монстра заставить отбрасывать статичную тень, но помните, что он уйдет, а тень останется.
zhlt_shadowmode (0\1\2). Баланс качества\скорости рассчёта. По дефолту еденичка. Для моделей с транспарентными текстурами надо использовать именно еденичку, поскольку тени от дырявых текстур есть только в этом режиме. Режим 0 самый похабный, режим 2 самый точный. На точность еще влияет разрешение лайтмапы, но для пользователей халфы это недоступно, как понимаете.

4. Ускорение работы HLCSG (хэширование планесов)

5. Поддержка ландшафтов (для новой паранои). Пока что бесполезно для вас, хотя уже в рабочем состоянии.

6. Новая система прогресс-бара (как в сорсе). Теперь ползёт каждая точечка, а не три точки + цифра процента - удобнее наблюдать за динамикой компиляции.

7. Поддержка прозрачной мировой воды (на данный момент отключена, т.к. вызывает вылеты в раде из-за выключения HLRAD_WATERBLOCKLIGHT). Можете отключить его на чистой версии VHLT34 и покомпилить карты. Если всё равно будет вылетать - это уже не моя вина.

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

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

Update at 21.12.2016
1. Переработан механизм определения игровой директории мода. Сейчас единственное требование это наличие карты в папке maps, расположение компилятора уже не столь критично. Можете так же держать его в папке maps, если кто-то так раньше делал. Однако не советую держать его на другом диске.
2. Механизм симплификации моделей отключен для zhlt_shadowmode 0 и 1, оставлен только для режима 2. В первых двух режимах он всё равно не давал особого прироста, а в тени появлялись дырки.
3. Устранено зависание компилятора, когда процент сделаной работы равен 99.9% (иногда бывает).
4. для студиомоделей выключены тени от additive мешей.

Update at 23.12.2016
Несколько мелких исправлений.

Вложение: vhlt_v34_custom_build_rev3.7z (249.0 кб)
Этот файл был скачан 652 раз.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 162730

Старое сообщение 17-12-2016 20:21
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Ну и пожалуй приложу тестовую карту с тенями от моделек для халфы

Вложение: env_static.zip (27.0 кб)
Этот файл был скачан 554 раз.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 162731

Старое сообщение 17-12-2016 20:22
-
ncuxonaT
каков стол, таков и стул

Группа: Опытный
Дата регистрации: Oct 2009
Проживает: город/село/деревня
Сообщений: 1626
Возраст: 33

Рейтинг



Читает.
Скорость рада как-то изменилась по сравнению с прошлой версией?

Сообщить модератору | | IP: Записан
Сообщение: 162732

Старое сообщение 17-12-2016 20:29
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



ncuxonaT что за прошлая версия?

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 162733

Старое сообщение 17-12-2016 20:42
-
ncuxonaT
каков стол, таков и стул

Группа: Опытный
Дата регистрации: Oct 2009
Проживает: город/село/деревня
Сообщений: 1626
Возраст: 33

Рейтинг



Дядя Миша ну старые паранойевские компиляторы

Добавлено 18-12-2016 в 01:23:

В старой версии еще тени были только от солидных env_static. В этой так же?

Сообщить модератору | | IP: Записан
Сообщение: 162734

Старое сообщение 17-12-2016 22:23
- За что?
***FantoM***
Житель форума

Дата регистрации: Nov 2014
Проживает: Да
Сообщений: 392

Рейтинг



Цитата:
Дядя Миша писал:
3. Тени от моделей.

ошибка
Warning: LoadStudioModel: couldn't load models/box_floor.mdl
Что не так?

Сообщить модератору | | IP: Записан
Сообщение: 162741

Старое сообщение 18-12-2016 11:26
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



карты надо компилить там где они будут лежать в моде
mymod\maps
иначе никак. Все кваки так компилят и только хаммер как самый умный предлагает почему-то в левую папку сохранять. Или какой-то идиот в туторе написал, а за ним уже 16 лет дружно повторяют.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 162745

Старое сообщение 18-12-2016 13:17
-
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34491
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


Цитата:
Дядя Миша писал:
Или какой-то идиот в туторе написал, а за ним уже 16 лет дружно повторяют.

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

__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!

Сообщить модератору | | IP: Записан
Сообщение: 162747

Старое сообщение 18-12-2016 13:33
-
KiQ
Житель форума

Дата регистрации: Aug 2010
Проживает: Смоленск, Москва
Сообщений: 2087

Рейтинг



Ну я обычно завожу папку имя_мода/SDK/mapsrc, это ж удобнее, чем если компилятор будет гадить всякими темп-файлами в релизную папку

__________________
-Brain is dead-

Сообщить модератору | | IP: Записан
Сообщение: 162748

Старое сообщение 18-12-2016 13:40
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34491
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


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

__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!

Сообщить модератору | | IP: Записан
Сообщение: 162749

Старое сообщение 18-12-2016 13:59
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12830
Возраст: 32

Рейтинг



Ждём 64битную версию хлрад

Цитата:
XaeroX писал:
KiQ
Проблема в том, что в таком случае компилятор должен гадать, где находятся прочие нужные ему файлы игры - в частности, модели. Обычным компиляторам-то ничего не нужно, кроме вадов - а пути к ним сохраняются в мап.




Т.е. пути к папке мода в настройках редактора существуют только для красоты? Это я про джек, к компиляции батником оно конечно никак не относится.
Для батника наверное нужно вводить отдельный ключ к ресурсам игры.

Это всё последствия концепции то что программа должна всё делать за пользователя. ДМ помню очень не приветствовал такой подход.

__________________
Иван Топорышкин пошел на охоту,
С ним пудель пошел, перепрыгнув забор,
Иван, как бревно провалился в болото,
А пудель в реке утонул, как топор.

Отредактировано FiEctro 18-12-2016 в 14:22

Сообщить модератору | | IP: Записан
Сообщение: 162750

Старое сообщение 18-12-2016 14:16
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
KiQ писал:
это ж удобнее, чем если компилятор будет гадить всякими темп-файлами в релизную папку

code:
del /f /q *.prt del /f /q *.pln del /f /q *.p0 del /f /q *.p1 del /f /q *.p2 del /f /q *.p3 del /f /q *.b0 del /f /q *.b1 del /f /q *.b2 del /f /q *.b3 del /f /q *.log del /f /q *.hsz del /f /q *.err del /f /q *.lin del /f /q *.pts rem del /f /q *.ent del /f /q *.wa_

называешь cleanup.bat и переодически очищаешь папку maps.
нашли проблему на ровном месте.

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 162751

Старое сообщение 18-12-2016 14:19
-
mittorn
Житель форума
Девойс

Дата регистрации: Nov 2009
Проживает: Томск
Сообщений: 398

Рейтинг



Но... Ведь чисто там, где не мусорят!

Сообщить модератору | | IP: Записан
Сообщение: 162752

Старое сообщение 18-12-2016 14:47
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32130
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
FiEctro писал:
Это всё последствия концепции то что программа должна всё делать за пользователя. ДМ помню очень не приветствовал такой подход.

Смотря что делать.
Вообще говоря проблема с определением путей к моду для компилятора это такая фундаментальная головная боль. В очень старом ксаше, я пробывал это разрулить путём введения команд компилятору, как у движка, ну что-то вроде: -game cs1.5 +map cs_italy
а саму папку с игрой, компилятор уже искал через переменные окружения и прочие способы. ну и все помнят к чему это привело - юзеры себе наклонировали по стопитцот версий, а механизм был рассчитан на одну.

Цитата:
mittorn писал:
Но... Ведь чисто там, где не мусорят!

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

__________________
My Projects: download page

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

Цитата:

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

Сообщить модератору | | IP: Записан
Сообщение: 162753

Старое сообщение 18-12-2016 15:08
-
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Цитата:
XaeroX писал:
Проблема в том, что в таком случае компилятор должен гадать, где находятся прочие нужные ему файлы игры - в частности, модели. Обычным компиляторам-то ничего не нужно, кроме вадов - а пути к ним сохраняются в мап.

Ну значит надо это дело как-то в коде компилятора оформить. И через командную строку указывать, какие файлы оставлять в конечной папке мода, а какие нет.
Меня, например, очень огорчает, что VHLT удаляют сами часть временных файлов, в частности файлы хуллов. Так ни разу и не воспользовался фичей просмотра хуллов в джеке, т.к. хуллфайлов после компиляции не остаётся.
Цитата:
Дядя Миша писал:
del /f /q *.prt
del /f /q *.pln
del /f /q *.p0
del /f /q *.p1
del /f /q *.p2
del /f /q *.p3
del /f /q *.b0
del /f /q *.b1
del /f /q *.b2
del /f /q *.b3
del /f /q *.log
del /f /q *.hsz
del /f /q *.err
del /f /q *.lin
del /f /q *.pts
rem del /f /q *.ent
del /f /q *.wa_

Фу-фу-фу так делать вручную. И, кстати, pts и lin можно опционально дублировать в папку мода. Не помню, какой из них может грузить движок, чтобы искать дырку на карте непосредственно в игре.

Сообщить модератору | | IP: Записан
Сообщение: 162769

Старое сообщение 19-12-2016 04:27
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 04:32. Новая тема    Ответить
Страницы (6): [1] 2 3 4 5 » ... Последняя »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > Новая версия VHLT с поддержкой теней от студиомоделей
Бета-тестирование
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024