Материалы
11 лет назад
Оптимизация карты. Хинты
Окончание урока про оптимизацию. Теперь о хинтах
Итак, окончание туториала про оптимизацию. На этот раз мы обсудим хинты. Хинты - это плоскости, которые разделяют (разрезают) листья при компиляции vvis.exe. Этот компилятор как раз делит карту на листья, а хинты выступают подсказками - указывают, как лучше разделить лист, чтобы ничего лишнего не отрисовывалось и карта была оптимизирована. Искусственный Интеллект, к сожалению, в компиляторе пока отсутствует для того, чтобы правильно нарезать карту на листья
Хинты - обыкновенные браши, покрытые со всех сторон текстурой TOOLS/TOOLSSKIP. Та часть, которая будет выступать в роли хинта, т.е. плоскости для разделения листьев, должна быть покрыта текстурой TOOLS/TOOLSHINT. Запомните! Лист будет разделён только при условии, если плоскость хинта делит этот лист полностью (нет промежутков, утечек из одной части листа в другую). Короче, точно также, как с ареапорталами
Итак, как же использовать эти хинты. Главное, понять основу их работы, потом вы будете сами придумывать расстановку хинтов согласно геометрии вашей карты. Всё сложное основано на простом. Я приведу вам два простых примера
Как вы видите на изображении выше, у нас есть игрок и трубы, которых разделяет высокая стена (достаточно высокая, чтобы игрок не видел труб). При компиляции vvis.exe разделит карту на такие листья:
Если вы помните правила отрисовки из первой части туториала, то вы поймёте, что трубы будут отрисовываться игроку, потому что из листа, в котором находится игрок, виден лист, в котором находятся трубы. Это плохо скажется на оптимизации, поэтому ставим хинт (выделен белым):
Теперь трубы не будут отрисовываться игроку, потому что теперь лист с трубами не виден из листа игрока. Теперь рассмотрим пример с коридором:
Весь коридор, вместе с бочками, будет отрисовываться для игрока, даже если он их не видит. Он видит лист, в котором находится другая часть коридора. Но эту проблему можно решить таким образом:
Теперь лист другого коридора, а следовательно, и бочки, будут видны, когда игрок подойдёт ближе к повороту.
На этом я заканчиваю туториал на тему оптимизации карты. Я рассказал вам о правилах отрисовки и основах оптимизации. Зная основы, вы легко сможете оптимизировать любую карту и решить любую проблему оптимизации. Нужно только работать головой и фантазировать
Комментарии пользователей сайта:
А этот хинт скрывает только пропы?
:
И где тогда использовать skip?
Kastet562, hint - текстура которая делит листы. Skip - текстура которая не делит листы.
Блин, подскажите плз какую текстуру должна иметь плоскость, разделяющая листы (белый цвет на картинке) и почему текстуры две (skip и hint).
3d_oleg, скомпилируй карту (только vbsp) и загрузи в хаммер prt файл.
вижу что хинт стыкуется с другими внешними брашами, создавая замкнутую оласть и правильно обрабатывается. а если у меня нет внешних брашей, если я хочу обогнуть дом на открытой карте,(у меня нету правой и нижней стен,а только угол дома - последний скрин) как ставить хинт?
Если Вам понравилась эта страница, Вы можете разместить где-нибудь ссылку на неё: