Unreal Tournament 3. Нереальное картостроение
Несмотря на то что Unreal Tournament 3 построен на движке Unreal Engine 3 , который структурно мало чем отличается от своих предыдущих версий, игровой редактор претерпел довольно серьезные изменения. Сначала он работал нестабильно, но после нескольких патчей все нормализовалось. Самое время разобраться, как же работает обновленный редактор, и научиться конструировать в нем несложные карты.
Структура
Инструментарий для предыдущих версий Unreal Tournament проживал в директории \Binaries , новый же редактор вживлен в саму игру; чтобы запустить его, выберите пункт меню Пуск/Все программы/Unreal Tournament 3/Unreal Tournament 3 Editor. Большую часть редактора занимают проекционные окна, показывающие уровень в различных плоскостях (именно в них и производится создание новых карт и отдельных объектов). Слева располагается панель инструментов, на нее вынесены кнопки для создания стандартных примитивов (кубов, сфер, цилиндров), компоненты для переключения между различными режимами редактирования и некоторые другие полезные элементы. В верхней области программы проживают каскадные меню (содержат основные команды для сохранения, загрузки и импорта файлов, копирования и вставки 3D-моделей, вызова подсказок), а также еще две вспомогательные панели инструментов.
Перемещение камеры по сцене производится при помощи курсорных стрелок на клавиатуре. Для поворота камеры на определенный угол необходимо передвинуть мышь влево или вправо с зажатой правой кнопкой. Масштабируется изображение колесиком мышки.
Трехмерные миры
Создание новой карты для UT 3 проходит по следующей схеме: на основе встроенных в редактор геометрических фигур (шаблонов) делается простейшая комната, затем она покрывается текстурами, и только после этого на уровень добавляются оружие, персонажи, транспорт, строения и прочие элементы.
Чтобы сформировать каркас будущего уровня, на панели в левой части редактора перейдите в свиток шаблонов (второй сверху), содержащий различные объекты-заготовки, и щелкните левой клавишей мышки по кнопке с изображением нужного геометрического тела, например цилиндра ( Cylinder ). Вы увидите, что базовый объект (куб) будет заменен выбранным вами каркасом.
Теперь необходимо изменить местоположение шаблона на сцене. Выделите его в одном из окон 2D-вида, зажмите клавишу Ctrl на клавиатуре и передвиньте мышь с зажатой левой кнопкой. Чтобы повернуть фигуру на определенный угол, не отпуская Ctrl, ухватитесь за любую часть конструкции и переместите мышь с зажатой правой кнопкой. В редактор встроена функция масштабирования 3D-объектов, то есть можно делать крохотные дома или огромных персонажей. Для изменения размера любого выбранного элемента кликните по пункту меню Edit/Scale , перейдите в одно из проекционных окон, наведите курсор на нужную координатную ось (она красного цвета) и переместите мышь с зажатой левой кнопкой на новое место.
С трехмерными формами удобнее всего работать прямо в окне перспективы. Выберите пункт меню Edit/Translate для активации режима перемещения каркасов. Далее, для перемещения объектов по оси абсцисс ( X ) используйте комбинацию клавиш Ctrl + LMB (LMB — левая кнопка мышки). Дабы передвинуть каркас по оси ординат ( Y ), зажмите клавишу Ctrl, уцепитесь за произвольный элемент конструкции правой клавишей мышки и, не отпуская ее, перетащите манипулятор на новое место. Изменение высоты ( Z -координата) осуществляется с помощью комбинации клавиш Ctrl + LMB + RMB. Поворот объектов в окне 3D-вида производится аналогичным образом, единственное отличие состоит в том, что каркасы поворачиваются в режиме Use the Rotation Widget (для его активации необходимо кликнуть по кнопке со схематичным изображением стрелки на панели инструментов в верхней части редактора).
Примитивней некуда
Переходим к изменению формы примитивов. Выделите заготовку уровня на одном из видов. На панели в левой части приложения щелкните по кнопке Geometry Mode с изображением каркаса куба (вторая по счету, располагается напротив компонента Camera Mode ). Вы увидите, что на форме программы появится панелька Geometry Tools , которая содержит ряд кнопок для активации режимов выделения моделей. Всего в Unreal Editor четыре режима редактирования шаблонов. Object нацелен на изменение формы объекта в целом. Poly позволяет работать с отдельно взятыми полигонами. Edge используется для модифицирования ребер каркаса. Ну а Vertex пригодится для редактирования вершин.
Рассмотрим действие инструмента Vertex из поля Selection Mode более подробно. Выделите каркас в любом окне проекции. Затем на панели Geometry Tools найдите область Selection Mode и кликните по кнопке Vertex с изображением трех точек красного цвета (последняя по списку). Дважды щелкните левой кнопкой мышки по произвольной вершинке элемента — появится индикатор перемещения. Чтобы передвинуть вершину по одной из координатных осей (X, Y или Z), наведите курсор на нужную ось, зажмите клавишу Ctrl и переместите мышь с зажатой левой кнопкой на новое место. Для выделения двух и более вершинок каркаса зажмите клавишу Ctrl и поочередно выделите нужные точки объекта.
Теперь можно преобразовать полученную 3D-форму в игровой уровень: выделите заготовку, на панели в левой части редактора перейдите в свиток CSG -компонентов и щелкните по кнопке CSG: Subtract. Если вы все сделали правильно, то увидите, что ранее созданный каркас вывернется наизнанку и превратится в просторный игровой зал. При необходимости вы можете добавить на карту еще несколько неподвижных объектов (игровых комнат, элементов интерьера, архитектурных сооружений). Для этого на панели в левой части программы нажмите кнопку CSG: Add , на панели шаблонов щелкните левой клавишей мышки по тому примитиву, который хотите добавить к уже созданному уровню.
Текстурирование
Каркас уровня готов, самое время покрыть его текстурами. Щелкните по кнопке CSG: Add и выделите те стороны конструкции, на которые хотите нанести текстуры. Для выделения нескольких плоскостей объекта зажмите клавишу Ctrl и поочередно выберите нужные полигоны.
Вызовите браузер материалов через меню View/Browser Windows/Generic. В открывшемся окне перейдите на закладку Generic , в поле под комментарием Show All Resource Types поставьте флажки напротив пунктов Texture , Material и Material Instant Constant — подключатся все главные библиотеки текстур. Выберите из списка Packages любую из них и в выпадающем меню выберите пункт Fully Load (полная загрузка). В поле напротив появится список материалов, которые входят в состав набора. Чтобы присвоить любой материал выделенным полигонам объекта, достаточно один раз щелкнуть по нему левой кнопкой мыши.
Но это еще не все. Необходимо отредактировать развертку текстуры, только в этом случае она будет смотреться красиво. На панели инструментов в левой части редактора щелкните по кнопке Texture Alignment Mode , выполните команду Edit/Translate и выделите любой уже затекстурированный полигон. Наведите курсор на нужную ось (X или Y) и передвиньте мышь с зажатой левой клавишей на новое место. Поворот и масштабирование текстуры производится аналогичным образом, единственное отличие состоит в том, что вместо модуля Translate придется активировать опцию Rotate ( Edit/Rotate ) или Scale ( Edit/Scale) соответственно.
Игровые объекты
Чтобы завершить создание уровня, необходимо добавить на карту стартовую позицию игрока, а также несколько источников света. Если вы забудете добавить эти элементы, то не сможете скомпилировать карту — редактор выдаст ошибку.
Щелкните правой кнопкой мышки по любому полигону на полу уровня и в контекстном меню выберите пункт Add Actor/Add PlayerStart , появится плоский объект необычной формы — это и есть стартовая позиция для игрока. Изменить его положение можно точно так же, как и положение любого другого элемента на карте.
Источник света добавляется на уровень следующим образом. Снова выделите любой полигон, в выпадающем меню выберите пункт Add Actor/Add Light (Point). Для изменения свойств «лампы» кликните по ней правой кнопкой мышки, в контекстном меню выберите пункт PointLight (Properties) и измените значения нужных параметров в свитке Light окна PointLight_0 Properties. Вы можете отредактировать яркость источника света (характеристика Brightness ), цвет «лампочки» (настройка LightColor ), радиус (опция Radius ) и некоторые другие атрибуты.
Осталось совсем немного. Добавьте на карту модели транспортных средств, оружие, аптечки, боеприпасы и различные украшательства. Для этого кликните по меню View/Browser Windows/Generic. В появившемся окне выберите из списка игровых ресурсов элемент Static Mesh (напротив данного комментария необходимо поставить флажок), щелкните правой клавишей мышки по наименованию любой группы и в выпадающем меню выберите пункт Fully Load. В поле напротив выберите приглянувшуюся модель, перейдите в одно из окон обзора, щелкните по произвольному месту на уровне правой клавишей мыши и в контекстном меню выберите пункт Add Actor/Add Static Mesh: [Название выбранного вами каркаса] — моделька появится на карте.
По окончании строительных работ кликните по кнопочке Build/Build All , уровень скомпилируется. Протестировать свежеиспеченную карту можно прямо из редактора — команда Build/Play Level.
* * *
Изложенного в статье вполне достаточно для создания незамысловатого мультиплеерного уровня. Однако, чтобы поиграть с ботами, нам с вами еще предстоит освоить скриптописание под UT 3, научиться расставлять по карте вейпойнты и триггеры. Этим мы займемся в следующий раз в рамках видеоурока на нашем DVD.