Берсеркер
2318 постов
Карма: 216
#1 31 мая 2014 в 04:52
Всем доброго дня.
Задумал внедрить в ку3 и вольф систему управления материалами, как в думе3.
Хочу сделать так:
Какой-нибудь entity зажигает некое событие (например новый target_material).
Поля его такие:
count: номер локального параметра материала (integer, от 0 до 11, не проблема увеличить, просто сделал как в стандарте idTech4)
random: желаемое значение (float, имя не подходящее, но это издержки совместимости...)
target: имя целевого материала, string
wait: пауза между активациями (float, default 1 second)
(и не забываем про targetname - имя ентити, для его активации).

При активации, сервер шлёт соотв.инфу рендереру, а рендерер для указанного материала записывает значение random в указанный локальный параметр.

И для глобальных параметров:
Какой-нибудь entity зажигает некое событие (например новый target_global).
Поля его такие:
count: номер глобального параметра карты (integer, от 0 до 7, не проблема увеличить, просто сделал как в стандарте idTech4)
random: желаемое значение (float, имя не подходящее, но это издержки совместимости...)
wait: пауза между активациями (float, default 1 second)
(и не забываем про targetname - имя ентити, для его активации).

При активации, сервер шлёт соотв.инфу рендереру, а рендерер сохраняет значение random в указанный глобальный параметр в tr.wolrd.
Математические выражения, таблицы и условное выполнение слоёв (stages) в материале давно реализованы. Осталось подружить их с сервером. ))

Для Вольфа аналогично можно сделать и для скриптовой системы.

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

Знатоки idTech4 и прочие умные головы, покритикуйте или поправьте меня. Хочу сделать максимально красиво.

Машина несла меня через неведомые районы Галактики сквозь пространство математической реальности быстрее скорости света. (C) Фред Саберхаген.
DOOMer
1598 постов
Карма: 103
#2 08 июня 2014 в 10:52
Вроде всё логично. Но сама фича не особо (ИМХО) нужная для Q3 с его оиентированностью на деадматч. Для вольфа - да, в сингленаверное пригодилось бы.
Вертексы должны образовывать конвексный браш
My Quake Maps

Core i7 8700 3.3 Ghz, 32 Gb RAM, GeForce RTX2060s
Gentoo Linux [amd64] | Windows 10 Home



сохранись перед дверью...два раза =)