Ваш первый уровень в Portal 2

From Valve Developer Community
Jump to: navigation, search
English 简体中文

Браш (brush) - это простая трехмерная фигура, созданная с помощью инструмента Block Tool в Hammer. Браши используются для создания большинства крупных поверхностей в вашем уровне, например, потолков и полов. Сейчас мы создадим простую комнату, используя браши.

Создание пола с помощью брашей

Рисование браша.
  1. В меню "Tool" ("Инструменты") слева выберите Hammer block.png Block Tool.
  2. Щёлкните левой кнопкой мыши Вид сверху (Top) (правый верхний прямоугольник) и двиньте мышку вправо и вниз, как показано на рисунке.
  3. При перетаскивании вы увидите пунктирный контур прямоугольника или квадрата.
  4. Создайте квадрат 512x512 единиц и отпустите левую кнопку мыши.
  5. Нажмите клавишу Enter, чтобы создать браш, только что нарисованный вами.


Чтобы вернуться в режим выделения, нажмите кнопку Hammer select.png Selection tool на панели Tool или нажмите клавишу Esc.

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

Уменьшим толщину браша (который мы будем использовать в качестве пола) с заданных по умолчанию 64 единиц до 16. Для этого нам нужно изменить размер сетки.

Сетка

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

По умолчанию размер сетки равен 64, то есть её линии находятся на расстоянии 64 единиц друг от друга. Текущий размер сетки отображается в строке состояния в нижней части окна Hammer.

  • Нажатие кнопки Smaller Grid Hammer SmallerGrid.png сделает сетку в 2 раза гуще (увеличит частоту линий). Это может пригодиться для более точной подгонки. Размер сетки можно уменьшить также с помощью клавиши [.
  • Нажатие кнопки Larger Grid Hammer LargerGrid.png сделает сетку вдвое реже (уменьшит частоту линий). Увеличить размер сетки можно также с помощью клавиши ] .

Чтобы уменьшить размер сетки до 16 единиц, нажмем клавишу [ дважды. Посмотрите на строку состояния в правой нижней части окна Hammer и убедитесь, что там указано Grid: 16. Если это не так, нажимайте [ или ] до получения нужного результата. :)

Изменение размера пола

Уменьшение высоты браша в виде сбоку (Side).

Теперь сетка должна быть достаточно мелкой.

Переключитесь на нижнюю правую зону редактирования (вид сбоку). При наведении курсора на неё должна всплывать подсказка Side. Перетащите верхнюю границу браша вниз так, чтобы он стал толщиной в 16 единиц.

Перемещение брашей

Чтобы переместить браш, перетащите его в любом двухмерном виде.

Браши можно перемещать. Выберите Selection Tool Hammer select.png и наведите курсор мыши на браш (но не на его угол) в одном из двухмерных видов. Курсор поменяется на 4 стрелочки, указывающие в 4 направлениях FourArrows.png, - это означает возможность перемещения объекта.

Чтобы переместить браш, нажмите на него и потащите в одном из двухмерных видов. После отпускания кнопки мыши браш будет перемещён на указанную позицию.
Изменение настроек Hammer.

Объекты можно перемещать клавишами со стрелками. Для этого, правда, потребуется изменить настройки Hammer:

  1. В меню Tools выберите Options, чтобы открыть диалоговое окно Configure Hammer.
  2. Выберите вкладку 2D Views.
  3. Установите флажок Arrow keys nudge selected object/vertex (Перемещать выбранные объекты/вершины клавишами со стрелками).
  4. Нажмите OK, чтобы подтвердить изменения и закрыть окно настроек.

Теперь переместим браш-пол на 16 единиц вниз, просто поместив курсор мыши над брашем в Виде сбоку (Side) и 1 раз нажав клавишу Стрелка_вниз.

Перемещение браша в виде сбоку (Side).
Примечание:Чтобы включенный файл NAV сработал, необходимо разместить поверхность пола на уровне начальной линии.

Навигация в двухмерных видах

  • Для перемещения по 2D-видам вы можете использовать полосы прокрутки.
  • Более быстрый способ: нажав клавишу Пробел перетаскивайте область вида левой кнопкой мышки.
  • Для масштабирования используйте колёсико мыши.

Текстурирование

Чтобы увидеть текстуры в окне просмотра 3D Camera, щелкните правой кнопкой мыши надпись camera и выберите 3D Textured.

Выбор режима 3D Textured в области просмотра Camera.

Навигация в области просмотра 3D Camera

Навигация в 3D слегка отличается от перемещения в двухмерных видах:

  • Нажмите Пробел и левую кнопку мыши и перемещайте курсор, чтобы вращать камеру.
  • Нажмите Пробел и правую кнопку мыши и перемещайте курсор, чтобы перемещаться вверх/вниз и влево/вправо.
  • Нажмите Пробел и обе кнопки мыши и перемещайте курсор, чтобы перемещаться вперёд и назад.
  • Используйте клавиши W, A, S и D, чтобы перемещаться вперёд, назад, влево и вправо соответственно.
  • Клавиша Z включает и выключает режим "mouse look". Переместите указатель на область 3D Camera и нажмите клавишу Z. Двигая мышь, вы можете осматриваться так же, как делаете это в игре.
Примечание:Клавиши W A S D можно использовать для перемещения вместе с Пробелом

Переместитесь в область просмотра 3D Camera и посмотрите сверху на пол, который мы только что создали.

Кнопка Browse на панели Texture.

На полу сейчас находится текстура по умолчанию, и наверняка вам захочется поменять её. Чтобы сменить текущую текстуру, нажмите кнопку Browse на панели Texture справа.

Откроется окно Texture Browser.
Типичная серая "developer" текстура.

В поле Filter в нижней части окна можно отфильтровать текстуры по имени. В качестве нашего примера введите в это поле слово "dev_measure" (со знаком подчёркивания). Появится список "developer" текстур, с помощью которых можно набросать что-нибудь по-быстрому.

Теперь найдите текстуру dev/dev_measuregeneric01b и дважды щёлкните по ней.


Применение текущей текстуры к выбранному брашу.

Это вернёт вас обратно в редактор и поместит выбранную текстуру в качестве текущей на панели Texture.

Выберите браш пола, если он ещё не выбран, щелкнув него в окне просмотра Camera. Он должен стать красным.

После выбора браша нажмите кнопку Hammer ApplyCurrentTexture.png Apply current texture на панели Tool, чтобы применить текущую текстуру к выбранному. Пол должен покрыться серой текстурой.

Создание стен и потолка

Теперь создадим стены и потолок комнаты. Выберем самый простой способ - продублируем браш пола.

Дублирование

Для создания потолка и стен можно выбрать имеющийся пол и продублировать его.

Примечание:Для дублирования необходимо установить флажок Arrow keys nudge selected object/vertex в параметрах Hammer, если вы еще не сделали это ранее в ходе руководства. Найти его можно здесь: Tools > Options > вкладка 2D Tab.
Дублирование брашей для создания комнаты.

Для дублирования:

  1. Выберите созданный вами браш пола.
  2. Наведите курсор на область просмотра Вид сбоку (Side).
  3. Удерживая Shift нажмите клавишу Стрелка_вверх, чтобы создать дубликат и переместить его на 1 единицу сетки вверх.

Это действие создаст ещё один браш, такой же, как пол, и поместит его над имеющимся полом.

Далее, для создания стены вы можете изменить размеры нового браша, перемещая маркеры ("квадратики") на его углах. Давайте сделаем стену в 128 единиц высотой и 16 единиц толщиной.

Совет:
Для перемещения созданного браша используйте клавиши со стрелками или щелкните в центре браша и перетащите его мышью в нужное место.


Чтобы создать остальные стены, продублируем созданную стену 3 раза.
Дублирование пола для создания потолка.

Продублируем браш пола ещё раз и поднимем его, чтобы он стал потолком.

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

Удаление брашей

Чтобы удалить браш, выберите его с помощью Selection Tool Hammer select.png и нажмите клавишу Delete.

Множественное выделение

Применение оранжевой "developer" текстуры к стенам.

В области просмотра Camera трудновато ориентироваться, находясь внутри комнаты, так как её стены, пол и потолок покрыты одной и той же текстурой. Поменяем текстуру стен на другую.

Чтобы выбрать все стены, удерживая клавишу Ctrl и щелкните по каждой стене в области просмотра Camera. Для вращения камеры придется воспользоваться клавишей Пробел.

После того, как вы выберете все стены, нажмите кнопку Browse на панели Texture. На этот раз выберем оранжевую текстуру с названием dev/dev_measuregeneric01. Двойным щелчком выберем её и закроем окно обзора текстур.

Используйте Hammer ApplyCurrentTexture.png с панели Tool, чтобы применить оранжевую текстуру к стенам.

Сохранение файла

Чтобы сохранить файл, нажмите сочетание клавиш Ctrl+S или выберите пункт Save в меню File.

В окне сохранения введите название карты и укажите папку, где она будет сохранена.

К примеру, назовём файл "tutorial01" и сохраним его в папке mapsrc, по умолчанию расположенной в

C:\Program Files\Steam\steamapps\common\portal 2\sdk_content\maps\

Расположение папки может отличаться в зависимости от того, куда вы установили Steam.

Поставляемые карты-примеры

В ходе сохранения своей карты вы заметите другие папки в расположении mapsrc. В Portal 2 Authoring Tools входят несколько карт-примеров для вашего ознакомления.

Папка Содержит
maps\mp_coop_doors Кооперативная карта.
maps\mp_coop_paint_red_racer Кооперативная карта с Ускоряющим гелем.
maps\sp_a2_column_blocker Карта одиночного режима со Световыми мостами.
maps\sp_a2_trust_fling Карта одиночного режима с Воздушными панелями веры.
maps\sp_a3_speed_ramp Карта одиночного режима с Ускоряющим гелем.
maps\sp_a4_laser_catapult Карта одиночного режима с Экскурсионными воронками, Лазерами и Воздушной панелью веры.
maps\zoo_mechanics Содержит большинство элементов игровой механики Portal 2.

Размещение энтитей

Выбор энтити.
Размещение info_player_start.

Далее разместим в нашей карте энтити для игрока:

  1. Выберите Hammer entity.png Entity Tool на панели Tool.
  2. После выбора Entity Tool станет активным список выбора Entity на панели Object.
  3. Среди Categories выберите пункт Entities.
  4. Щёлкните стрелочку в раскрывающемся списке Objects и выберите info_player_start.
  5. Теперь в области просмотра Camera переместитесь к центру внутри комнаты.
  6. Щелкните пол левой кнопкой мыши, чтобы разместить на нем энтити.
Теперь энтити info_player_start находится в центре комнаты.

Установка света

Создадим в карте источник света:

  1. Снова выберите Entity Tool
  2. Выберите пункт light в списке Objects на панели Object.
  3. На этот раз разместите свет на потолке (над головой энтити игрока).
  4. Вернитесь в режим выбора, нажав Hammer select.png на панели Tool или нажав клавишу Esc.
Свойства светового объекта.

Далее изменим некоторые настройки света. Откроем свойства света, дважды щелкнув его в области просмотра Camera или выбрав его (левой кнопкой мыши) и затем нажав клавиши Alt+ Enter. Откроется окно Object Properties.

В Object Properties можно изменять различные свойства энтити. Например, вы можете поменять яркость света - Brightness. Щелкните строку Brightness в списке Keyvalues, и вы увидите несколько чисел в поле с правой стороны. По умолчанию значения яркости света равны 255 255 255 200. Первые три числа представляют значения RGB (цвет), а последнее - интенсивность света.

Чтобы выбрать цвет из палитры, а не вводить значения вручную, нажмите кнопку Pick Color.
Выбор цвета для света.

Просто выберите цвет для света и нажмите OK.

Вы вновь вернетесь в окно Object Properties для света. Внесенные вами изменения яркости должны отразиться в строке Brightness и в поле справа, если строка Brightness выделена.

Нажмите кнопку Применить, чтобы просмотреть изменения энтити и закройте окно крестиком в верхней правой части окна.

Размещение энтити prop_static

Окно Object Properties для энтити prop_static.

Энтити также могут представлять собой различные предметы (props) типа мебели, декоративных украшений и элементов сложной архитектуры. Существуют различные виды предметов. Энтити Prop_static - это статичные предметы – они не двигаются, не отображают анимацию и никак не изменяются. Существуют также энтити prop_dynamic, которые могут двигаться, быть анимированными, а также могут активироваться и деактивироваться. Существуют также энтити prop_physics, с которыми игрок может взаимодействовать как с физическими предметами реального мира.

Чтобы разместить предмет:

  1. Снова выберите Entity Tool.
  2. В панели Object в списке Objects выберите prop_static.
  3. Щелкните пол левой кнопкой перед энтити игрока, чтобы разместить prop_static. Вы увидите красный куб, представляющий энтити prop_static до того, как ей будет назначена модель.
  4. Вернитесь в режим выбора, нажав кнопку Hammer select.png на панели Tool или нажав клавишу Esc.
  5. Щёлкните красный кубик дважды для открытия его свойств.
  6. Два раза щёлкните поле World Model, чтобы открыть Model Browser.
Warning: При первом открытии окна Model Browser загрузка всех моделей может занять некоторое время. Окно может не выглядеть сразу так, как на иллюстрации. Если вы не можете найти какую-то модель, подождите пару минут до завершения загрузки.

Выбор модели

Выбор модели раздатчика геля в Model Browser.
  1. В поле Filter в нижней части окна введите "paint". Отобразятся модели, содержащие "paint" в своем названии.
  2. Прокрутите до модели под названием:
    "props_underground\underground_paintdropper.mdl".
    Как она выглядит, см. на иллюстрации.
  3. Нажмите OK, чтобы выбрать модель, закрыть браузер и вернуться в окно Object Properties. Теперь в строке World Model должно отображаться название выбранной модели.
  4. Нажмите кнопку Применить, чтобы сохранить изменения энтити.
  5. Закройте окно Properties крестиком.
Теперь во всех областях редактора видна добавленная модель.

Перемещение энтитей

Энтити можно перемещать так же, как и браши. Щелкните и перетащите контур выбранной энтити для ее перемещения, или перемещайте их клавишами со стрелками в любой области просмотра.

Поворот энтитей

Чтобы повернуть любой объект, выберите его с помощью Selection Tool Hammer select.png, а затем щелкните его. Вокруг него появится 4 маркера поворота. Чтобы повернуть объект, в любом двухмерном виде щелкните и перетащите маркер мышью.

В виде спереди (Front) увеличьте масштаб колесиком мыши и щелкните внутри рамки модели раздатчика, чтобы отобразить 4 маркера поворота.

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

Запуск карты в игре

В окне Run Map выберите эти параметры и нажмите OK.

Даже если вы сохранили карту, для её запуска на игровом движке потребуется компиляция.

После компиляции карта преобразуется из необработанного файла .VMF, сохраненного вами, в формат .BSP, используемый игровым движком. В нем в ходе компиляции выполняется обработка данных геометрии, а также предварительный расчет освещения и теней с помощью различных компиляторов.

  • Откройте меню File и выберите пункт Run Map... или нажмите клавишу F9.
  • Откроется окно Run Map.
  • В этом окне задаются основные параметры компиляции.
    1. Задайте Normal для параметров Run BSP, Run VIS и Run RAD.
    2. В поле Additional game parameters: должны быть введены следующие настройки:
      -toconsole -dev -console +sv_lan 1
    3. Нажмите OK, чтобы начать компиляцию карты.

В окне Compile Process Window отображается ход выполнения компиляции. По её окончании автоматически запустится игра, и начнется загрузка вашей карты.

Note:Если вы хотите выполнить компиляцию с высоким динамическим диапазоном яркости освещения, установите флажок HDR. Компиляция займет в два раза больше времени, но это совершенно нормально.

По окончании компиляции ваша карта должна загрузиться в игре. Это займет одну-две минуты.

Карта, запущенная в игре.

Консоль отладки

При создании уровней для Portal 2 иногда требуется вводить команды в окне Консоль отладки. В ней, например, можно создать кубы и турели для проверки.

Включение консоли отладки.

Если вы не подготовились, то, чтобы включить консоль:

  1. Нажмите в игре клавишу Esc.
  2. Щёлкните Параметры, затем Клавиатура/Мышь.
  3. Щёлкните Разрешить консоль отладки и выберите "Включено".
  4. Щёлкните кнопку Готово.
  5. Щёлкните Вернуться в игру.

Использование консоли отладки:

  1. Вызовите консоль нажатием клавиши ` (тильда ~, ё).
  2. Введите команду и нажмите Enter.
  3. Закройте консоль клавишей ё.

Режим Noclip

Наиболее востребованная консольная команда - это режим noclip. В нем можно свободно перемещаться, свободно проходя сквозь любые препятствия. Это удобно для быстрого обзора больших карт.

Чтобы войти в режим noclip:

  • Нажмите ` для входа в консоль.
  • Введите noclip и нажмите Enter.
  • Осмотрите карту в свободном полете.
  • Чтобы покинуть режим и перемещаться обычным способом, введите команду noclip снова.
  • Вы можете переключать noclip нажатием клавиши, назначенной с помощью команды bind. Например, bind mouse3 noclip позволит переключать этот режим средней кнопкой мыши.

Прочие полезные консольные команды

Доступно множество консольных команд, здесь для примера приведены лишь некоторые из них.

sv_cheats 1
Разрешает ввод читов. Необходима для множества консольных команд.
map <название карты>
Загрузка карты.
changelevel <название карты>
Загрузка другой карты с сохранением игрового сеанса.
god 1
Режим неуязвимости для всех игроков.
noclip
Позволяет свободно проходить сквозь стены и любые препятствия.

Введение в разработку уровней
Приступаем к работе
Подводные камни