| меню |
|
 |
| Категории раздела |
|
 |
| твой статус |
Онлайн всего: 3 Гостей: 3 Пользователей: 0 |
 |
| вход |
|
 |
|
 | |  |
|
небо
3D skybox
Вы наверно замечали на стандартных картах всякие здания, которые, казалось бы, находятся так близко - но дойти до них нельзя, noclip тоже не помогает. А знаете почему? Нет? Читайте тутор и поймёте =).
Ну вот и приехали. Сегодня будем учиться делать пейзажи, как сказал мистер Rick Ellis - 3D SkyBox. Чувствую что уже весь монитор в слюнях - давайте, наконец, приступать. Пункт №1: Приготовления.
Создайте на карте браш с квадратным основанием и высотой 1664, закрасьте его полностью текстурой tools/toolsskybox, нажмите ctrl+h и в параметрах установите -64. Мы создали оболочку для неба с наружной толщиной в 64 юнита. Теперь дублируйте вашу коробку и поместите её неподалёку. В первой коробке создайте землю, на которой вы будете появляться, info_player_start и light_environment. Во второй коробке создайте prop_dynamic_override, установите world model на models/Combine_citadel.mdl. Правильно это башня комбайнов. Она и будет у нас в качестве панорамы. Теперь там же создайте light_environment, который будет освещать нашу башню.
Пункт №2: 3D Sky Box.
Ну наконец то мы сделаем то ради чего… в общем сделаем… Создайте внутри коробки с башней sky_camera. Настраивать в принципе необязательно, но если руки чешутся, настройте.
А свойства такие: 3D Skybox scale - размер отображаемых объектов по сравнению с оригиналами, если к примеру будет 16 то это означает 16:1(шестнадцать к одному - для танкистов=)). Fog Enable - yes/no - есть ли туман? Да/нет. Если шейдеры не держатся на видюхе - забудьте об этом параметре. Fog Blend - какой-то графический наворот с туманом, у меня шейдеров нет так что я не знаю что это. А вообще Blend переводится как смешивание… Primary Fog Color - главный/основной/первичный цвет тумана. Sec. Fog Color - второстепенный цвет тумана. Primary Fog Dir - главное/основное/первичное направление тумана. Fog Start - интервал на котором появится туман. Fog End - интервал на котором кончится туман и скроет всё что за ним находится.
Теперь разместите энтитю юнитов на 128 выше, чем основание нашей башни, компилируйте карту, радуйтесь.
Скриншоты, к сожалению, показать не могу, я сделал 10 штук и ни на одном толком ничего не запечатлилось. Какая же всё-таки бета сырая.
Ну а теперь примечания:
Примечание №1: Если вам не нравится, как расположены объекты, попробуйте перемещать sky_camera. Примечание №2: sky_camera показывает всё, что находится внутри вашей коробки. Таким же образом можно попробовать сделать и зеркало.
Базовое HDR-освещение
Движок Сорса поддерживает два независимых набора лайтмапов (lightmaps) в бсп-файле: один для HDR (High Dynamic Range) и один для LDR (Low Dynamic Range). LDR-освещение - то же освещение, что и в обычном ХЛ2. С LDR-освещением мы имели темные места на карте, и приходилось использовать дополнительные источники освещения, чтобы избавиться от излишней темноты на некоторых участках карты. Теперь, с HDR, мы можем просто использовать автовыдержку для освещения темных мест, не применяя поддельного освещения. Отрицательной стороной здесь является то, что два набора лайтмапов увеличивают вес бсп-файла, порой, больше, чем в 2 раза. Примечание: На данный момент HDR поддерживается в Lost Coast, DOD:S и CS:S и не работает в обычных ХЛ2 и ХЛ2МП, пока не выйдет соответствующее обновление.
Базовая компиляция HDR-карт
Простейший способ быстрого получения работающего HDR-освещения - откомпилировать карту заново с последней версией Vrad`а.
Если вы используете встроенный в Хаммер компилятор, то все очень просто:
1. Откройте свою карту в Хаммере.
2. Выберите Run Map в меню File.
3. В установках BSP, VIS и RAD поставьте Normal.
4. В секции RAD поставьте флажок на пункте HDR.
5. Нажмите OK для начала компиляции.
Примечание: В окне компиляции вы увидите, что VRAD запускается дважды при активированном HDR - VRAD`у нужно просчитать отдельно освещение для LDR и HDR режимов.
Строчные параметры VRAD`а для HDR
Если вы не используете встроенный в Хаммер компилятор, то вам нужно будет написать в командной строке следующие параметры для VRAD`а: -both, -ldr, -hdr и -final: -both - компилируются оба типа лайтмапов (LDR и HDR); -ldr - только LDR -hdr - только HDR -final - улучшает качество света от неба (skylight) и отраженных лучей. Естественно, это сказывается на времени компиляции. Внимание: использование параметра -final ооочень заметно продлить время компиляции. Эта опция уменьшает количество ошибок освещения, которые обыно возникают при освещении закрытых помещений светом от Vrad`а.
2. Загрузите уровень. HDRдолжен быть активирован (если не активирован, то напишите в консоли mat_hdr_enabled 1).
3. Напишите buildcubemaps в консоли для построения HDR-кубмапов.
4. Напишите mat_hdr_enabled 0 в консоли для переключения в LDR-режим (это займет некоторое время, т.к. лайтмапы дожны перезагрузиться).
5. Напишите buildcubemaps в консоли для построения LDR-кубмапов.
Эту процедуру нужно проделывать после каждой компиляции вашей карты, иначе кубмапы будут выглядеть неправильно.
Выбор HDR-скайбокса
Еще одна вещь, способная легко улучшить качество HDR-эффектов - выбор для карты HDR-скайбокса.
Выбор HDR-скайбоксов Хаммере:
1. Выберите пункт Map properties в меню Map.
2. Напишите название HDR-скайбокса в поле Skybox Texture Name (например, sky_example_hdr). Посмотрите Список скаев, где указаны доступные скайбоксы.
3. Откомпилируйте карту с новым скайбоксом.
Карта-пример sdk_hdr_example.vmf входящая в состав SDK включает в себя нужные энтити для демонстрации работы HDR. Примечание: файл карты-примера находится в папке dod, находящейся в sourcesdk_content.
Создание неба на карте
В данном туторе я постараюсь объяснить как устроено небо в играх на движке Source и как использовать его на своих картах.{nl}Небо - так называемый скайбокс (от англ. skybox- небесная коробка) состоит из шести изображений. Пол, потолок и четыре стены - всё вместе это образует своеобразную коробку, которая окружает уровень и придаёт ему большую реалистичность. Этот метод построения небес на картах широко использовался в большинстве известных игр, таких как Quake 2, Half-life 1-2 и т.д. и продолжает использоваться до сих пор. Создание неба для движка Source, пламенного сердца Half-life 2, практически не отличается от аналогичной операции в отношении Half-life. Различие составляет лишь то, что сейчас текстуры требуют упаковки в формат .vtf и создания индивидуально для каждой файла .vmt, содержащего в своём теле описание некоторых свойств текстуры.
2. Создание и компиляция текстур.
Сейчас мы на примере рассмотрим создание скайбокса и установку его на вашу карту в Half-life 2. Для начала нам нужны шесть изображений неба. Нарисовать их можно и самому в Photoshop, главное чтобы четыре боковых изображения могли быть соединены в одно непрерывное изображение, а две оставшися представляли собой вер и низ скайбокса. Текстуры должны быть представлены в формате .tga (targa), глубиной цвета 16, 24 или 32 бита. Размеры должны быть эквивалентны числу 2: 512х512 пикселей - оптимальное разрешение.
Идём дальше. Конвертируйте текстуры в .tga, придайте им разрешение 512x512 и положите в папку materialsrc вашего мода. Теперь придайте текстурам имена, подходящие для компиляции скайбокса: К примеру ваш скайбокс будет называться nebo. Тогда текстура, на которой изображён низ скайбокса получает имя nebodn.tga. dn - означает down, что в переводе с английского - низ. По аналогии, верх скайбокса neboup.tga (up - верх), а боковые стороны nebolf.tga,nebort.tga,neboft.tga и nebobk.tga. Left, right, front и back соответственно.
Каждая текстура при компиляции использует текстовый документ, имеющий имя текстуры и содержащий команды для компилятора. В принципе, если его нет, компилятор создаст пустой файл, но нам необходимо указать в нём параметр $skybox, тогда при игре на небе не будет швов :) Создайте шесть текстовых документов и назовите их также как и текстуры, но расширение оставьте .txt. В каждом из них поместите вышеуказанный параметр $skybox. Всё готово для компиляции.
Запустите Steam и откройте новое окно, в котором прописан путь до папки bin, вашего SDK. C:Program FilesValveSteamSteamAppsваш_аккаунтsourcesdkbin Теперь лёгким движением руки перетаскивайте по очереди каждую текстуру на значок vtex.exe, лежащий в папке bin. В принципе с тем же успехом вы можете создать ярлык для этой проги и перенести его в папку materialsrc, а затем таскать текстуры на него.
Заходите в папку material, вашего мода и смотрите, появились ли там шесть файлов с расширением .vtf. Создайте там же папку skybox и скиньте файлы в неё. Теперь осталось для каждого файла создать одноимённый .vmt со следующим содержанием:
UnlitGeneric { $basetexture skybox/имя_текстуры_без_расширения $nofog 1 $ignorez 1 } Получаем: nebolf.vmt,nebort.vmt,nebobk.vmt,neboft.vmt,neboup.vmt и nebodn.vmt
3. Установка скайбокса на карте и компиляция.
Запустите Хаммер, настроенный для работы с вашим модом. Создайте новую карту и в ней большую коробку. Нажмите на полученный куб правой кнопкой мыши, выберите пункт hollow и нажмите enter. Внутри куба, который теперь стал пустотелым, создайте площадку, киньте на неё info_player_start, light_environment и наконец покрасьте куб в текстуру скайбокса. Для этого откройте браузер текстур и наберите в строке поиска tools/. Видите голубую текстуру с именем tools/toolsskybox? Выбирайте её, смело щёлкая по изображению левой кнопкой мыши. Закройте панель текстур. Теперь выделите куб, которому предназначено быть скайбоксом и нажмите на значок apply current texture, чтобы куб окрасился в выбранную текстуру. Последний штрих: в свойствах карты надо указать используемый скайбокс, по умолчанию стоит sky_wasteland02. Для этого заходим в меню map -> map properties..., выбираем строку SkyBox Texture Name и вписываем туда своё небо. Точнее то самое ключевое слово, которое присутствует в именах всех шести текстур - nebo... Ес-сно без расширения.
Вроде ничего не забыл. Ладно, жмите уже F9 и компилируйте карту. Если вместо неба увидите чёрно-фиолетовую текстуру, раскраски а-ля шахматная доска для эпилептиков - то это означает что вы его неправильно скомпилировали.
|
| Категория: другое | Добавил: _m_e_a_t_ (26.04.2010)
|
| Просмотров: 1292
| Рейтинг: 0.0/0 |
| |
 | |  |
|
| Поиск |
|
 |
|