Гайд по редактору KF2 SDK: интерфейс, браши и статики
Это переработка начала русского мануала по KF2 SDK. Автор в оригинале предлагает скачать полную версию в PDF и Word (там есть картинки и меньше опечаток), а в Steam выложил только первую часть, поскольку без иллюстраций читать тяжело. Цель мануала - объяснить редактор, избавить новичков от лишних вопросов и помочь скорее начать делать собственные карты. Если вы знакомы с UDK или редактором первой KF, будет проще: KF2 SDK - это сильно модифицированный UDK, и большинство функций в них работают одинаково. Общий обзор моддинга смотрите в моддинге для чайников.
Интерфейс редактора
Редактор - одно большое рабочее окно (при желании окон можно добавить, но автор работает в одном). На первый взгляд интерфейс неудобен, но многие элементы дублируют друг друга.
- File: New level (новый уровень), Open (открыть карту), Save current level, Save as, Switch render (переключение рендера между DirectX 10 и 11), Import/Export (нужны, только если переносите карты из других игр на Unreal Engine), список недавних файлов. Остальное не используется.
- View: есть автосохранение; интервал меняется в Change autosave options (автор советует 15 минут, так как однажды из-за отключения света потерял около 20 минут работы). Здесь же New floating viewport (добавить окно) и Fullscreen.
- Edit, Brush: практически не используются, дублируют другие элементы (Brush копирует вкладки CSG и Volumes слева).
- Build и Play: то же делают значки в правом верхнем углу.
- Tools и Help: мало пользы.
- Preferences: очень полезная вкладка.
Два способа строить уровень
Автор советует комбинировать оба.
Браши (Brushes, BSP) - геометрия уровня, каркас, как фундамент здания. Хотя все официальные карты сделаны без брашей, они удобны и, в отличие от статиков, не дают швов. Минусы: система крови KF2 на брашах не работает (можно обмануть, застелив пол статиками с той же текстурой), любой добавляющий браш легко конвертируется в статик, а геометрия не пересобирается сама, пока не нажать Build Geometry (куб справа вверху); обойти это можно, включив в Preferences автообновление визуализации BSP.
Статики (Static Meshes) - декор: столы, стулья, лампы. Они поддерживают систему крови, а в Content Browser есть строительные статики, из которых можно собрать уровень не хуже, чем из брашей. Минусы: швы, особенно в системе крови, и при увеличении размера растёт и кровь (вместо капли получается лужа). Статикам легко задать физику, превратив их в KActor, из них делают двери и мувер-платформы. Если кровь нужна везде, стройте карту только из статиков.
Управление и первый браш
Управление - мышью и горячими клавишами. ЛКМ - движение в направлении, ПКМ - осмотр, обе кнопки - изменение высоты; можно использовать WASD. F11 - полноэкранный режим, B возвращает пропавший красный строительный браш.
Пространство редактора - огромная пустота (в первой KF - сплошная твёрдая масса), которую надо заполнить. Красный куб - строительный браш; ПКМ по его значку открывает размеры. Пример: задать 20000 по X и Y, нажать Build, затем Add во вкладке CSG - получится огромная платформа. Если текстуры не видно, проверьте режимы Unlit и P.
Режимы окна: P (и три других) - вид (сверху, снизу, сбоку, перспектива; удобнее всего перспектива); Brush wireframe и Wireframe; Unlit и Lit (без освещения и с освещением; автор работает в Unlit, а Lit подходит мощным ПК или лёгким картам); значок джойстика - Real time (полезно смотреть эмиттеры вроде огня); G - вид, как в игре.
Дальше: создайте второй куб, например 800x800x800, с галочкой Hollow и толщиной стены 16-32, нажмите Build, но не добавляйте сразу: сначала расположите. Это делается стрелками на ребре строительного браша или мышью при зажатом Ctrl (ЛКМ - красная стрелка, ПКМ - зелёная, обе - синяя). Переключатель World/Local задаёт систему осей: World - относительно мира (рекомендуется), Local - относительно объекта. Размер сетки в правом нижнем углу рекомендуют 8-32, сетку углов поворота 5-11 градусов. Пробел переключает режимы: перемещение, поворот, масштаб (первый вариант масштабирует пропорционально, второй - по оси).
Чтобы сделать вход, создайте меньший браш (например 200x200x300) без Hollow, расположите ниже и вырежьте кнопкой Subtract. Браши делятся на добавляющие и вырезающие - всё просто (в отличие от KF1).
Фигуры
- Куб: понятно.
- Конус и цилиндр: число сторон Sides (не больше 20, иначе тяжело редактору), радиусы Outer и Inner (реально меняется Outer, так как Hollow используется редко).
- Curved staircase (винтовая с заворотом): радиус, высота и ширина ступеньки (Step height, width), угол (360 градусов - круговая), число ступеней Num steps, Add to first step, Counter clockwise (поворот на 180).
- Linear staircase: прямая лестница с теми же настройками.
- Spiral staircase: всегда 360 градусов.
- Sphere: для большего числа полигонов меняйте Sphere extrapolation, 5 более чем достаточно.
- Sheet и Cards не используются.
Копирование и выделение
Если работаете только с брашами, включите автообновление BSP или жмите Build Geometry после изменений (для новых брашей это не обязательно). Выбрать весь браш можно через рёбра в режиме Brush wireframe или включив в Preferences Clicking BSP selected brush. Перемещение с зажатым Alt создаёт копию; запасной вариант - Ctrl+W (даёт небольшое смещение, но работает при кривых или смещённых осях). Несколько объектов выделяются Ctrl+клик.
Content Browser
Здесь хранятся звуки, объекты, эмиттеры и эффекты. Горячая клавиша - Ctrl+Shift+F. Пакеты по умолчанию запакованы и их надо загружать. Нужны в основном текстовые вкладки сверху, поиск и фильтр, а главное - Packages. Нажмите на гаечный ключ у Packages, чтобы список стал нужным.
Важно: в Unreal Engine 3 на объекты и поверхности накладываются только материалы (тег Mat; автор для удобства зовёт их текстурами). Объекты называются Static Meshes (тег Mesh). Пакеты официальных карт имеют тег Env.
Статики подробно
Добавление. Чтобы добавить объект с карты Biotics Lab, в поиске Packages введите env mesh (можно дописать bio), выберите пакет (предпросмотра нет), ПКМ - Fully Load. Выберите статик и добавьте: ПКМ по поверхности - Add StaticMesh, либо перетащите из Content Browser.
Окно параметров (F4). Нужна вкладка Static Mesh Component, в ней Rendering и изредка Lighting; иногда Display и Collision.
- Rendering: Materials (смена скина: плюс, None, выбор материала в браузере, зелёная стрелка), Min и Max Draw Distance (отличная оптимизация), Hidden Game (для невидимых лесенок для ZED).
- Lighting: обращайтесь, только если свет работает некорректно; галочки Indoor и Outdoor - каналы освещения.
- Display, Draw Scale: размер по всем осям или по каждой отдельно; отрицательное число зеркалит статик. Растяжка должна быть кратна 0.25, иначе при расположении будут швы или щели.
- Collision: нужна только в особых случаях, например когда объект не должен преграждать путь ZED. Некоторые объекты по умолчанию не имеют коллизии; помогает невидимая стена Blocking Volume (ПКМ по статику - Create Blocking Volume; если неточно, последний вариант Auto Convex Collision с настройкой точности, но он часто роняет редактор). При создании Blocking Volume коллизия статика переключается на BlockWeapons (блокируются только выстрелы и гранаты); пользуйтесь шаблонами в Collision Type.
- Can step up on: если ноги ZED или игроков коллизят объект (например воду-статик), а тело нет, ZED будут ходить «в присядке».
Поэкспериментируйте, добавьте статики, и можно переходить к текстурам уровня.
Босс не выходит в конце игры
Вопрос из темы «Как на кастомных картах заставить патриарха выходить в конце?» на форуме killingfloor.ru. По ответу UltraKill, босс появляется, только если на карте есть специальная точка спавна для него: она маленькая, и в её названии есть слово BOSS. В коллекции стандартного контента SDK есть все виды спавнов. Автор темы ответил UltraKill, что на карте-«кубе» самого UltraKill такой спавн был один и постоянно оказывался на виду, поэтому босс не хотел появляться; пришлось добавить ещё 12 мест спавна.
Вопросы и ответы
- На что похож редактор KF2 SDK?
- Это сильно модифицированный UDK, поэтому большинство уроков по UDK подходит и к KF2, хотя и не все.
- Что лучше для основы уровня: браши или статики?
- Автор советует делать основу из брашей (нет швов), а затем заполнять уровень статиками. Но система крови KF2 не работает на брашах, а работает на статиках.
- С чем связана кратность масштаба статиков 0.25?
- Растяжка статика должна быть кратна 0.25, иначе при расстановке по сетке мира появятся швы или щели.