Многие зеркальные и
environment материалы берут информацию о сових отражениях в игре из
внешних источников. Этими внешними источниками могут быть Cubemap`ы -
текстуры, которые представляют собой 360-градусный рендеринг окружающей
местности. Используя Cubemap`ы, зеркальные и environment материалы
будут более точно отражать окружающие пространства. Ставить Cubemap`ы и
располагать их в пространстве очень просто, но очень важно расположить
их правильно, как в эстетическом плане, так и в плане
производительности . Расположение Чтобы поставить
Cubemap`ы на карте, нужно использовать env_cubemap ентитю. Когда карта
откомпилирована с помощью VBSP, все видимые фэйсы автоматически
связывают себя с ближайшими Cubemap`ами. Нужно обратить
внимание на то, что Cubemap`ы могут выполнять несколько задач в
зависимости от того, как они расположены на карте. Некоторые Cubemap`ы
будут использоваться для отражения окружающего пространства на
геометрии карты. Другие Cubemap`ы будут использоваться для отражения
окружающего пространства на различных ентитях, таких как NPC или сам
игрок. Располагая Cubemap`ы на карте, нужно следовать нескольким
простым правилам, чтобы получить от них максимальную пользу:
Если Cubemap`ы предназначены для NPC или игрока, то они должны быть
расположены на высоте в 64 юнита, чтобы лучше всего отражать мир для
находящихся рядом объектов. Если Cubemap`ы предназначены для
отражения окружающего пространства на геометрии, то они должны быть
удалены на 16 юнитов от всех брашей. Cubemap`ы должны быть
размещены во всех зонах с визуальным контрастом. У коридора с ярким
жёлтым светом должен быть свой Cubemap, особенно, если рядом будет
комната с темно-синим светом. Без двух отдельных Cubemap`ов оражения и
зеркальные эффекты будут отображаться неправильно на ентитях и
геометрии карты. Компиляция Cubemap`ы могут быть
построены только после компиляции карты VBSP`ом и VRAD`ом
(соответственно). Запустите вашу карту и включите какой-нибудь из
графиков(showbudget, net_graph), затем наберите в консоли buildcubemaps
для построения Cubemap`ов . В верхнем левом углу вы сможете увидеть
каждую грань Cubemap`а(по 6 на один Cubemap) во время рендеринга. В
зависимости от вашей видеокарты, драйвера и сложности вашей карты
процесс может занять от пары секунд до нескольких минут. После
построения Cubemap`ов должна быть перезапущена, чтобы они правильно
были применены ко всем граням объектов. Тестирование
Правильность применения Cubemap`ов лучше всего проверять с помощью
консольной команды impulse 81. Она заменяет текущую модель оружия на
несколько сфер с различной отражающей способностью. Двигаясь по карте,
вы сможете увидеть, какие Cubemap`ы поставлены в данную точку,
правильно ли они применены. Это лучший способ проверить правильность
применения Cubemap`ов. Производительность Ентитя
env_cubemap позволяет пользователю выбирать размер отображаемой
текстуры. С одной стороны увеличение текстуры делает результаты работы
Cubemap`ов более лучшими, чем обычно, но с другой - увеличивает
требования к текстурной памяти видеокарты. Для большинства Cubemap`ов
следует использовать настройки по умолчанию относительно текстур.
Некоторые исключения возможны для карт с большим количеством зеркальных
поверхностей или очень детализированных карт. Следует также
отметить, что использование большого числа Cubemap`ов на маленьких
пространствах может привести к визуальному несоответствию отражений.
Для пространств с большим числом зеркальных поверхностей обычно
рекомендуется ставить по одному Cubemap`у на центр фейса и всё. Это
поможет избежать возникновения различных несостыковок и трещин(???) во
время движения в игре. Чтобы определить, насколько загружают
систему Cubemap`ы, посмотрите в графу World Rendering, набрав в консоли
+showbudget. Если эта категория расходует на себя слишком много
системных ресурсов, возможно, виной этому большое количество Cubemap`ов
на карте. Чтобы быть точно уверенным в этом, уберите в Хаммере все
Cubemap`ы и откомпилируйте карту заново, если производительность в игре
заметно увеличится, то вам следует уменьшить количество Cubemap`ов
и/или их разрешение.
Источник: http://www.source-inside.ru/index.php?id=116 |