Учебник по созданию карт
Глава IX. Небо.

§ 9.4 Создание картинок неба в программе Terragen

Из данной статьи Вы узнаете, как при помощи программы Terragen можно создать картинки неба для использования на своей карте. При написании статьи частично использовались материалы с сайта http://gamedesign.net/. Благодарим автора: Mithodiel.


ЧАСТЬ ПЕРВАЯ. О небе в Counter-Strike

1.1 Environment Map (небо)

Environment Map - это графические изображения природного ландшафта. Применительно к Counter-Strike, это 6 картинок неба, которые сгенерированы таким образом, что отображают все пространство вокруг игрока.

Создавая при помощи SKY-брашей небо вокруг карты, мы указываем игровому движку, где игрок должен видеть картинки неба. Затем 6 картинок накладываются на стороны воображаемого куба, расположенного как бы за картой. Следовательно, картинки можно назвать по сторонам куба: верхняя, нижняя, левая, правая, передняя и задняя.


1.2 Где хранятся картинки неба?

Картинки неба для Counter-Strike карт хранятся в папке "cstrike\gfxenv..".


1.3 Размер и формат картинок неба

Размер картинок строго ограничен и составляет 256х256 пикселей. Основным форматом является TGA (24-бит). Раньше, когда еще не было 3D-ускорителей, использовался формат PCX и BMP (8-бит), однако сейчас надобность в данных форматах отпала.


1.4 Названия картинок неба

Чтобы небо правильно отображалось на карте, необходимо правильно называть каждую картинку неба. Названия картинок составляются по формату: названиеXX, где ХХ - одно из 6 окончаний (см. ниже).

То, что идет до этих букв, не имеет значения, сюда Вы можете вписать что угодно. А вот последние две буквы каждой картинки должны быть именно такими. Сделано это для того, чтобы движок игры знал какую картинку проецировать на какую грань куба.

А вот как "состыковываются" картинки неба (мысленно сложите эту развертку в куб и получите небо в CS):

Расположение картинок неба в зависимости от названия картинки


Когда Вы создаете карту и определяете какое небо будет на ней, то в меню "Map\Map properties..." в параметр environment map Вы вписываете только название БЕЗ последних 2 букв! Например, для карты De_dust мы вписали бы название des, а для De_aztec - doom1.


ЧАСТЬ ВТОРАЯ. Создание картинок неба при помощи программы Terragen

Теперь перейдем непосредственно к использованию программы Terragen для рендеринга картинок.

О Terragen
Скачать Terragen можно с сайта http://www.planetside.co.uk/terragen/download.shtml

Мы использовали версию 0.8.11 (в момент написания статьи уже существовала версия 0.8.44). Программа платная, однако ее можно использовать бесплатно с некоторыми ограничениями. Или же Вы можете воспользоваться кряком, которых в сети навалом :)

Главными преимуществами Terragen перед другими подобными программами являются: ее небольшой размер, а также быстрый рендеринг изображений (даже на слабых компьютерах).

В Terragen можно создавать различные природные явления такие, как туман, молнии и пр.
Для этой программы существует большое количество плагинов, которые расширяют ее возможности, например, при помощи плагинов можно создавать на фоне пейзажа лес, водопады, дома и пр..


В данной статье мы научим Вас создавать самое простое небо без каких-либо наворотов. При желании Вы сможете приобрести больше навыков по работе с данной программой, посетив сайты, ссылки на которые собраны здесь: http://www.terrasource.net/


Итак, установите и запустите Terragen.
В самом начале Вы увидите 2 окошка: Landscape и Rendering Control. Начнем с первого.

1. Окно Landscape

В окне Landscape генерируется внешний вид и рельеф местности.

Окно Landscape: в нем генерируется внешний вид и рельеф местности


Для начала откроем один из стандартных внешних видов (кнопка Open на рисунке выше). Выбор у нас небольшой, всего 5 различных поверхностей, среди которых есть: "Пустыня с травой", "Трава и песок", "Трава и снег", "Безжизненная пустыня" и "Красная пустыня".

Мы остановили свой выбор на "DesertAndGrass", т.е. "Пустыне с травой".

В этом же окне Landscape можно немного подредактировать рельеф ландшафта - сделать повыше горы или наоборот глубже впадины (инструменты, выполняющие эти операции, выделены синим прямоугольником на рисунке выше). Также можно выставить черно-белое или цветное отображение рельефной карты (флажки Greys и Cols соответственно), но об этом чуть позже, т.к. мы еще не сгенерировали поверхность.

Генерировать поверхность мы сможем после нажатия на кнопку Generate Terrain...

Нажимаем кнопку Generate Terrain


После нажатия на Generate Terrain..., появится следующее окошко, в котором можно выставить параметры будущей поверхности (выделено синим).

Окно со свойствами генерируемой поверхности


Method
Выбор метода, используемого для создания ландшафта. Например, методы Ridged Perlin и Perlin Noise делают местность более скалистой. Проще всего поэкспериментировать с данными установками.

Action
Если Вы хотите создать новую местность с нуля, то выбирайте первый пункт (Erase first and generate...).
В противном случае будет создана новая поверхность и совмещена с уже существующей.

Realism
Чем больше значение, тем более реалистичным будет пейзаж, более плавными будут переходы от возвышенностей к ложбинам и т.п. Меньшее значение создает более скалистый (отвесный) рельеф.

Smoothing
Сглаженность пейзажа. Выставление слишком большого значения данного параметра может привести к рендерингу не очень реалистичных пейзажей.

Glaciation
Данный параметр отвечает за выравнивание, сглаживание впадин (ложбин).

Canyonism
Противоположность Glaciation, т.е. создает более угловатый рельеф.

Size of Features
Этот параметр определяет размеры холмов, возвышенностей, как по площади, так и по высоте.


После того, как все параметры выставлены, нажимаем Generate Terrain. Создается поверхность. И вот теперь мы можем подредактировать рельеф вручную инструментами, описанными выше.


2. Окно Rendering Control

В окне "Rendering Control" мы определяем положение и направление взгляда камеры, а также устанавливаем качество, детализацию и размер будущих картинок.

Первым синим прямоугольником выделены координаты камеры. Удобно установить флажок на "Terrain units", тогда центральное положение камеры будет при X=128 и Y=128 (Z - определяет высоту камеры над поверхностью земли). Выставьте Х=128, Y=128, а Z=любым.

Окно Rendering Control: в нем генерируются картинки


То, что не выделено синим прямоугольником (Target Position) устанавливает координаты мишени для камеры, т.е. точки, куда она смотрит. В принципе можно данные координаты не указывать.

А вот на следующем синем прямоугольнике остановимся подробнее, но чуть ниже :) Сначала необходимо указать Zoom, который определяет угол обзора камеры. Нам необходимо выставить угол 90°, чтобы получить 6 картинок неба.

Для этого нажимаем в окне Rendering Control кнопку Camera Settings... (обведена красным овалом).
Появляется следующее окошко:

Окно Camera Settings: в нем указывается угол обзора камеры


Photographic Medium
Здесь лучше указать последний пункт для получения наиболее реалистично выглядящих картинок.

Exposure/Light Sensitivity
Оставляем без изменения.

Zoom/Magnification
Этот параметр ОБЯЗАТЕЛЬНО должен быть равен 1, иначе небо для Half-Life нам не сделать.


Вернувшись в основное окно Rendering Control, нажимаем кнопку Settings...
В появившемся окошке устанавливаем максимальное качество рендеринга, а также Ultra-режим сглаживания (доступен только в зарегестрированной версии).

Окно Render Settings: в нем устанавливается качество рендеринга


Вернемся к картинке с окном Rendering Control (см. рис. ниже).

Теперь нужно выставить размеры будущих картинок. В Half-Life, как уже говорилось, используются картинки неба 256х256 пикселей. Однако можно сгенерировать картинки бОльшего размера, например, 512х512 пикселей, чтобы на них отобразилось бОльшее количество деталей.

Затем такие картинки необходимо будет уменьшить до 256х256 пикселей в каком-нибудь графическом редакторе (например, Photoshop).

Окно Rendering Control: в нем генерируются картинки


Переходим к заключительной стадии в создании картинок. Теперь все свойства уже выставлены, параметры определены, остается только сгенерировать 6 картинок, вращая камеру по сторонам на 90 градусов.

Управление ориентацией камеры производится параметрами, обозначенными вторым синим прямоугольником: Head, Pitch, Bank.

Bank - должен всегда быть равен 0.
Head - определяет сторону, в которую смотрит камера (0°, 90°, 180°, 270°).
Pitch - направление взгляда по вертикали (90° - строго вверх, -90° - строго вниз).

Ориентация камеры при рендеринге изображений
RT (правая картинка):   Head=0   Pitch=0   Bank=0

FT (передняя картинка):   Head=90   Pitch=0   Bank=0

LF (левая картинка):   Head=180   Pitch=0   Bank=0

BK (задняя картинка):   Head=270   Pitch=0   Bank=0

UP (верхняя картинка):   Head=0   Pitch=90   Bank=0

DN (нижняя картинка):   Head=0   Pitch=-90   Bank=0


Для запуска процесса рендеринга первой картинки нажмите кнопку Render Image. Процесс может затянуться, в зависимости от количества оперативной памяти, мощности процессора, а также от размера, детализации и качества будущей картинки.

После создания первой картинки, сохраните ее в формате BMP (24-бита). Измените параметры Head и Pitch на следующие и приступайте к рендерингу второго изображения.

В итоге у Вас должно получиться 6 картинок неба, которые необходимо уменьшить до 256х256 пикселей и перевести в формат TGA (24-бита).


3. Тестирование неба

Назовите картинки по формату, разобранному выше. Например, так:

clearday_rt.tga
clearday_ft.tga
clearday_lf.tga
clearday_bk.tga
clearday_up.tga
clearday_dn.tga.

Создайте простенькую тестовую карту. Для того, чтобы на карте было видно сразу 6 картинок неба, сделайте пол из CLIP-браша, который в игре будет прозрачным, и Вы сможете увидеть все участки неба.

Впишите название clearday_ в параметр environment map, что находится в меню "Map\Map properties...".

Картинки поместите в папку "cstrike\gfx\env.." и запускайте карту. Все должно получиться.


Глава IX. Небо.


К оглавлению Учебника

© http://cs-mapper.by.ru/
CMT (CS Mapping Tutorials) - © 2006-2011+. Created by VM
[ Script Execution time: 0.005 ]