Для лучшего понимания этого объекта, изучите объект func_areaportal.
Описание:
Объект func_areaportalwindow используется для контроля видимости отдельных частей карты, автоматически открывая или закрывая невидимую перегородку (портал) между ними.
Разъяснение:
Объект func_areaportalwindow используется для оптимизации карт. Находясь вдалеке от окна, часть карты, находящаяся по ту сторону окна, не будет отображаться. Благодаря этому увеличивается быстродействие карты.
Принцип работы объекта func_areaportal основан на прозрачности окна. Чем дальше от окна будет находиться игрок, тем менее прозрачно оно будет. Удалившись от окна на достаточное расстояние, окно станет полностью непрозрачным, и та часть карты, которая находится за окном не будет отображаться до тех пор, пока игрок вновь не приблизится к окну.
Особенности использования:
- Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах. Удаление объекта во время игры закрывает портал до начала следующего раунда.
- Объект должен быть установлен там, где будет использоваться.
- На карте может быть установлено множество этих объектов.
- Объект представляет из себя обыкновенный HINT-браш, но который может контролироваться и иметь состояние открыт/закрыт. По этой причине этот объект делит пространство карты на листья (Leaves) для BSP-дерева, и использовать его нужно с учётом всех особенностей использования HINT-брашей.
- При использовании этого объекта активно расходуются ресурсы CPU компьютеров игроков, потому что постоянно проверяется видимость частей карты сквозь этот объект. Неправильное применение этого объекта может существенно снизить быстродействие карты.
- Объект должен быть покрыт материалом tools/toolsareaportal.
- Объект не должен иметь на себе DISPLACEMENT-поверхностей.
- Объект должен иметь простую форму и не должен состоять из нескольких брашей.
- Если этот объект разделяет некоторые части карты, но при этом эти части карты всё равно смогут друг друга "видеть", то карта будет скомпилирована неправильно компилятором VBSP.
Ошибки:
не обнаружены.
Заметки:
Объект func_areaportal не обязательно должен быть покрыт материалом tools/toolsareaportal, но с этим материалом объекты func_areaportal легко будут видны в редакторе Hammer.
Если используется объект "Foreground Brush-entity", то объект "Rendered Window" должен быть покрыт непрозрачным материалом с таким цветом, который соответствовал бы цвету материала для объекта "Foreground Brush-entity". Если объект "Foreground Brush-entity" не используется, то объект "Rendered Window" должен быть покрыт прозрачным материалом.
Для отладки порталов предусмотрены следующие консольные команды:
r_DrawPortals – (0 или 1, по умолчанию 0) скрыть/показать порталы;
r_PortalTestEnts – (0 или 1, по умолчанию 1) проверять видимость через портал всех функциональных объектов (entity) для игрока; проверка выполняется только тогда, когда портал открыт; эта опция отнимает ОЧЕНЬ много процессорного времени, что может очень сильно снизить быстродействие карты; принцип действия этой функции схож с принципом действия объекта func_occluder, только в отличие от объекта func_occluder, этот объект проверяет видимость абсолютно всех ближайших функциональных объектов (entity), а не только Prop-объектов; вы не должны отключать эту функцию во благо своей карте, потому что изменения коснутся всех последующих карт на сервере, идущих следом за вашей;
r_portalscloseall – (0 или 1, по умолчанию 0) закрыть все порталы на карте; после вызова этой команды ни один портал не сможет быть открыт; эта команда, совместно с командой "r_portalsopenall" используется для проверки скорости загрузки/выгрузки дополнительных материалов из видеопамяти при закрытии/открытии порталов, имитируя самые неблагоприятные игровые условия;
r_portalsopenall – (0 или 1, по умолчанию 0) открыть все порталы на карте; после вызова этой команды ни один портал не сможет быть закрыт; эта команда, совместно с командой "r_portalscloseall" используется для проверки скорости загрузки/выгрузки дополнительных материалов из видеопамяти при закрытии/открытии порталов, имитируя самые неблагоприятные игровые условия.
Советы:
В игре CS:S не используйте объект func_areaportalwindow в игровом пространстве карты. Потому что те игроки, которые будут находиться возле окна смогут видеть через него, а те игроки, которые будут находиться вдалеке от окна не смогут через него видеть. Это даёт очень весомое преимущество одним игрокам над другими.
Свойства:
Rendered Window – Brush-объект, используемый для рисования окна;
Foreground Brush-entity - Brush-объект, используемый в качестве основы для окна "Rendered Window"; этот объект отображается при любом состоянии объекта "Rendered Window", поэтому этот объект должен быть покрыт прозрачным материалом – например стекла, чтобы можно было через него смотреть; во время работы объекта func_areaportalwindow, этот объект автоматически помещается в центр объекта "Rendered Window", однако его модель столкновений остаётся на том месте, где находился объект в редакторе Hammer, поэтому в качестве объекта "Foreground Brush-entity" должен использоваться Brush-объект без модели столкновений;
Fade Start Distance – максимальное расстояние от окна "Rendered Window", на котором его прозрачность равна "Translucency limit";
Fade End Distance – минимальное расстояние до окна "Rendered Window", на котором оно полностью не прозрачно; на этом расстоянии портал открывается или закрывается автоматически;
Translucency limit – (от 0.0 до 1.0) какая минимальная прозрачность может быть у окна "Rendered Window"; 0.0 – полностью прозрачен; 1.0 – полностью не прозрачен;
Portal Version (Read-Only) – (всегда равно 1) версия порталов, используемая в движке; нельзя изменять.
Источник: http://www.virte.clan.su/publ/kartostroenie/func/func_areaportalwindow/6-1-0-217
Добавил: Le-Satan-Pirate
17.06.2025 Просмотров: 2512
Комментарии