Lev4 cforce

**Lev4\_CForce** (он же **demo**) — демонстрационная локация, предназначенная для показа графических возможностей движка и анимаций, а также тестирования динамического поведения вертолёта. Встречается только в *"XRAY Engine" demo build 788*. На локации показываются отражения от статической геометрии карты окружения, работа источников *glow* и подверженная скриптованию анимация больших объектов.

## Описание

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

## Основные объекты

### Дорога

Дорожная магистраль, начинающаяся у трёх живых кедров (единственные встречающиеся живые деревья вне купола) в ущелье с мёртвыми деревьями, проходящая по мосту и спускающаяся в лес под куполом.

### Мост

Высотный металлический мост над рекой. Под ним располагается грузовой причал со входом в тоннель и грузовым транспортёром, способным доставлять на эту платформу грузы.

### Тоннель

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

### Саркофаг

Прямоугольный стеклянный саркофаг, по куполом которого находится кедровый лес с кустарниками и травой.

## История создания

Уровень предназначался для демонстрации на нём графических возможностей движка *X-Ray* на выставке *ECTS 2001*, проходившей со 2 по 4 сентября в Лондоне. Весь процесс его создания проходил в течение 2001 года.

### Зарисовки

Первичной художественной частью занимался Алексей Мосейчук, сделавший различные наброски. Известно только о 3-х из них, находящихся в архиве *ol\_cavg*, изначально опубликованном на закрытом Discrod-сервере.

### Геометрия

Моделированием уровня занимался Сергей Кармальский после окончания работ над lev1\_ruins. Точно неизвестно, был ли выбор создания уровня в футуристичном стиле следствием влияния идей пришедшего в компанию Мосейчука или это была целиком идея Кармальского.

 5 - 8 июня
 июль - 23 августа
 24 - 27 августа
 27 - 30 августа

Уровень создавался без какого-либо плана, являвшийся просто футуристичной геометрией-наброском (использовались текстуры *Grnd\_Asphalt2.tga*, *Grnd\_Asphalt3.tga*, *Grnd\_Asphalt4.tga*, *Mtl\_Walls1.tga*, *Mtl\_Walls2.tga*, *Mtl\_Walls3.tga* и *Mtl\_Walls4.tga*) — его изначальная версия в открытый доступ не попала, поэтому нет достоверных данных о конкретном визуальном представлении. Остались только упоминаемые пути к папке *Lev4\_CForce* на внутреннем сервере GSC Game World, где хранились все текстуры для этой локации, что позволяет говорить о том, что это название является «более официальным» для данной локации и на праве создателя уровня — Кармальского, который дал название этой директории и создаваемым для локации текстурам.

В начале июня началось создание данной известной версии уровня. Предположительно, разработка началась с моста и грузового причала под ним. Спустя пару дней было начато создание вертолёта *Apachetka*, пулемёта XM-134 и тестового уровня для проверки реализации управления вертолётом, то есть работа над уровнем приостановилась.

Работа продолжилась уже в июле, после завершения работы над текстурированием модели игрока, но вскоре процесс создания уровня был опять приостановлен — Сергей стал заниматься анимированием и настройкой HUD'а для пулемёта и визуальным наполнением heli\_test. После, когда близился конец месяца, он снова продолжил заниматься локацией. Оставался ровно месяц, чтобы создать уровень, наполнить и сделать демонстрационный облёт. Процесс моделирования и доработка основных текстур продолжались до двадцатых чисел августа, террейн был создан в последнюю очередь — 22 августа. На следующий день был сделан экспорт геометрии уровня в редактор уровней, после чего Кармальский в последующие дни сделал модели камней, мёртвого кустарника и контейнеров (стоящих возле грузового транспортера). Также были произведены незначительные правки геометрии, сделаны анимации движения транспортёра, элеватора и двери, ведущей в подземный тоннель. 27 августа были сделаны последние правки, а 29 августа уровень был скомпилирован.

19 сентября была сделана правка модели воды, являющаяся последней правкой локации.

### Наполнение

 28 - 30 августа

После завершения работы над созданием геометрии уровня Олесь занялся созданием шейдеров для статической геометрии, о чём есть соответствующие записи в файле *shaders.xr*.

**Записи о скомпилированных шейдерах**
Compiling shader "\_energy", created on "OLES", Wed Aug 22 18:03:44 2001

Compiling shader "\_energy\_2", created on "OLES", Wed Aug 22 19:06:56 2001

Compiling shader "\_energy\_base", created on "OLES", Mon Aug 27 11:36:52 2001

Compiling shader "\_energy\_base\_def", created on "OLES", Mon Aug 27 13:06:46 2001

Compiling shader "def\_blink\_2", created on "OLES", Thu Aug 23 15:51:24 2001

Compiling shader "def\_env", created on "OLES", Thu Aug 23 15:51:24 2001

Compiling shader "def\_refl", created on "OLES", Thu Aug 23 15:52:33 2001

Compiling shader "default\_detail", created on "OLES", Thu Aug 23 15:53:19 2001

Compiling shader "default\_detail\_2nd", created on "OLES", Tue Aug 28 17:44:08 2001

Compiling shader "glass", created on "OLES", Thu Aug 23 18:40:25 2001

Compiling shader "ground\_pps", created on "OLES", Sat Aug 25 15:54:59 2001

Compiling shader "landscape\_detail", created on "OLES", Thu Aug 23 17:29:21 2001

Compiling shader "model\_aref", created on "OLES", Tue Aug 28 17:44:08 2001

Compiling shader "s\_env\_mul2x", created on "OLES", Thu Aug 23 17:38:06 2001

Compiling shader "s\_refl\_mul2x", created on "OLES", Thu Jul 12 14:13:33 2001

Compiling shader "water", created on "OLES", Tue Aug 28 17:31:29 2001

Compiling shader "water\_old", created on "OLES", Tue Aug 28 17:31:19 2001

Compiling shader "water\_x", created on "OLES", Tue Aug 28 12:25:27 2001

Они выполняли следующие функции:

* работа отражений при использовании технологии *Environment Map*;
* мерцания текстур для имитации освещения;
* визуализации некой энергии, хранимой в одном из контейнеров у транспортёра;
* работа шейдера для террейна уровня (с применением детальной текстуры) и шейдера воды (его работа заключается в смещении позиции тайлинга текстуры со своих текстурных координат, что создаёт имитацию движения водного потока).

Позже Олесь этого занимался скриптованием динамических объектов и расстановкой *Event'*ов на уровне, которые, например, отвечали за проигрыш анимации открытия двери в подземный тоннель, когда при облёте камера залетает в зону действия.

## Интересный факт

Один из известных скриншотов уровня есть в журнале «Шпиль!» № 3 (октябрь 2001 года): он находится в обзоре выставки в небольшой колонке, посвящённой *Oblivion Lost* (страница 5).

## Галерея

* Зарисовки
* Зарисовка осветительной панели тоннеля
* Зарисовка моста
* Зарисовка грузового транспортёра

* Скриншоты
* Лес, находящийся под стеклянным саркофагом
* Наличие коллизии у воды позволяет передвигаться по ней как по обычному террейну
* Мост над речкой. Там же находится элеватор и вход в саркофаг
* Лес
* Пустынная территория с погибшими кустами
* Два камня и куста
* Три дерева в конце ущелья
* *Apachetka*
* Улетает за гору
* Вход в тоннель
* Коммуникации под тоннелем
* Выход из тоннеля

## Примечания

1. ^ Заметна работа на большинстве металлических поверхностях геометрии уровня
2. ^ На самом деле лес и тоннель соединяются провалом в грунте, а сам тоннель с недоработанной развёрткой заканчивается у реки, что, скорее всего, было связано с нехваткой времени.
3. ^ Эти текстуры были нарисованы в середине мая 2001, большая часть которых была позже обновлена в следующие месяцы.
4. ^ Об этом говорит наличие большинства имевшихся тогда текстур и добавленной недавно и активно используемой в данной геометрии текстуры *mtl\_walls5.tga* (дата изменения: 6 июня 2001).

Источники
1. ^ Images/!GSC/XRay/Levels/Lev4\_CForce/ *(ссылка на каталог с текстурами для сцен, лежащих в папках **old**, **old2**, **old3**, по адресу: **XRay.old\import**, представляющих собой геометрию этой локации)*.
2. ^ ..\!Demo\_2\shaders.xr