06 июля 2004
Обновлено 17.05.2023

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - изображение обложка

Пока некоторые специальные корреспонденты оттягивались на КРИ и под видом служебной необходимости исполняли заветные мечты детства, фотографируясь со знаменитостями, — силы международной коалиции опять бомбили Ирак… Хотя до этого момента обстановка в Персидском заливе не

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 1

Рис. 1. Меню настройки панели инструментов.
вызывала у нас столь бурных эмоций, но ведь обидно, поскольку мы, в отличие от некоторых специальных корреспондентов, продолжали скромно раскручивать гайки редактора MaxEd. И надо сказать — не безуспешно! В двух первых частях статьи вы, под нашим чутким руководством, научились возводить вольеры самых причудливых форм для утомленного жизнью мужчины со странной фамилией Payne. Третью часть мы посвятили обустройству этих закрытых пространств: оклеили стены готовыми текстурами, повесили лампочки для улучшения видимости, средствами редактора построили и приспособили на голые стены пожарные ящики (на всякий пожарный случай). В общем, для тех, кто читал, время даром не пропало. Но сегодня будет нечто особенное! Во-первых, позвольте поздравить себя от своего имени и весь наш скромный коллектив “ Игростроя ”, от имени того же меня, со славной победой — нам удалось скрестить двух титанов, 3D Max и MaxEd! Причем мы сделали это одними из первых, включая страны развитой демагогии. Не будь срок изготовления журнала столь долгим… Впрочем, множество Томов и Джонов не читают “Игроманию” (только рассматривают картинки), поэтому они вам не конкуренты. Вы получите намного больше свободы, чем освобожденные жители Ирака, поскольку, прочитав этот материал, сможете внедрить в игру любой предмет, вне зависимости от его внутренней природы. Хотите — делайте ежиков, хотите — вставляйте пыжиков.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 2

Рис. 2. Введем имя новой панели инструментов.
Во-вторых, вы научитесь задавать предметам, внедренным в игру из 3D Max, определенное назначение! Ваши ежики смогут перемещаться в пространстве, после прямого попадания стопы гражданина Max Payne, в строго заданном направлении. Мы, скромные труженики тыла, обещаем вам это… В-последних, нам надоело сидеть в глубоком заднем тылу. Мы тоже хотим на передний фронт, в окопы, брать интервью у знаменитостей, и скоро вы об этом еще услышите. Причем, поскольку наши ребята слегка одичали на пустынных уровнях Max Payne 2, никаких муси-пуси у нас не будет. Мы знаем, как делать сенсации. Коллегам надо было на встречу с Ромеро и Холлом прийти с плакатами “ Янки гоу хоум! ” и спрашивать их по самым животрепещущим темам, например, об общей обстановке в Ираке. Тогда бы репортаж с КРИ начался забойной передовицей: “ Наших специальных корреспондентов выкинули из гостиницы “Космос”! ”. Нескучно, и был бы повод от души порадоваться за коллег! 3DMax и MaxEd — скрещивание титанов Те, кто с 3D Max дружбу никогда не водил (но, может быть, собирается в ближайшем будущем), не пугайтесь. Построим изложение таким образом, что, даже впервые открыв 3D Max, вы сможете повторить описанное (однако, как и на экзамене, учебник под рукой никогда не будет лишним). Тем же, кто знает программу

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 3

Рис. 3. Новые кнопки перетаскиваем из списка Action.
достаточно хорошо, все равно не стоит пропускать построение простых объектов для Max Payne 2. Эти базовые знания позволят в дальнейшем получить желаемую свободу действий. Признаюсь, довольно долго пришлось повозиться, прежде чем первый модельный “блин” попал из 3D Max на горячий уровень Max Payne 2… Итак, если вы еще не установили плагин для 3D Max (из состава Max Payne 2 Tools ), начните с этого. Надо скопировать содержимое папки …\3dsmax5_plugins\3dsmax5 (которую вы обнаружите в каталоге с установленными инструментами Max Payne 2 Tools) в директорию, где находится 3D Max. Разработчики гарантируют работу всех функций плагина в 3dsmax5.1 Service Pack 1. Тем не менее с 5-й версией тоже можно работать. Во всяком случае, те

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 4

Рис. 4. Новая панель с новыми кнопками готова.
задачи, которые мы будем решать в этой статье, — ей по плечу. Тем, у кого более ранние версии программы (3, 4, 4.2), придется только завидовать остальным. Плагин установится, но работать не будет. Обращаю ваше внимание: с 6-й версией 3D Max (как ни странно) утилиты не работают! Поскольку трудности, наиболее вероятно, могут появиться у обладателей 5-й версии (наиболее распространенной), я буду рассказывать о работе с ней. Тем более что никаких принципиальных отличий (по сравнению с 5.1) не наблюдается. После того как все скопировано, необходимо настроить 3D Max. Вся хитрость в настройке. Запускаете программу. Наводите курсор на главную панель инструментов. Постарайтесь попасть курсором между кнопками (например, наведите на линию-сепаратор, разделяющую разные группы кнопок). Когда его вид станет похожим на ладонь, нажмите правую кнопку мыши (далее ПКМ ). Появится меню настройки панели инструментов (см. рис. 1 ). Выбираете в меню пункт Customize. Этим действием будет вызвано на экран окно настройки интерфейса пользователя ( Customize User Interface ). Того же самого можно добиться, выбрав пункт меню Customize/Customize User Interface. В дальнейшем, для экономии места, никаких альтернативных способов сделать одно и то же я приводить не буду. Только тот, который, на мой взгляд, наиболее удобен.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 5

Рис. 5. Сравните этот рисунок с рис. 1.
Создаем для инструментов от Remedy новую панель инструментов. Нажмите кнопку New в правой верхней части диалогового окна настройки интерфейса. Вам предложат ввести название новой панели. Пусть будет, по имени создателей, Remedy Tools. Вводите название в поле Name окна New Toolbar и подтверждайте свое решение кнопкой OK (см. рис. 2 ). Новая плавающая панель инструментов будет немедленно создана. Она появится на экране. В заголовке стоит заданное вами имя. Однако она совершенно пуста. Займемся наполнением. Вернитесь в окно Customize User Interface и убедитесь, что в поле Group стоит Main UI , в поле Category значится All Commands. Прокрутите список Action. После установки плагина в нем появились новые строки. Но поскольку вы вряд ли знаете, какие строки были в этом окне до этого, отличить инструменты Remedy можно по пиктограммкам слева от строк с названиями. Они выполнены в стиле Max Payne. За редким исключением, почти все представляют собой черно-белые сокращения названий функций. Нам потребуются две из них. Найдите в списке Action команду Export.asi (пиктограмма — EXP ASI ). По какой такой причине разработчики засунули конвертер формата в панель инструментов, один Max Payne знает. Теперь мы вытащим оттуда эту команду и поставим на

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 6

Рис. 6. Установка системных единиц в сантиметры.
нашу новую панель в виде кнопки. Для этого нажимаете левую кнопку мыши (далее ЛКМ ) на названии команды в списке Action и, не отпуская ее, перетаскиваете команду на вашу новую панель (см. рис. 3 ). Как только курсор с рамкой окажется в поле новой панели, отпускаете ЛКМ. На панели немедленно будет создана новая кнопка EXP ASI. Для второй кнопки в списке Action отыскиваете команду MaxEd Trimesh Parameters (пиктограмма — TRI SOUP ). Как и в первом случае, перетаскиваете команду на новую панель Remedy Tools. Там появится новая кнопка с названием TRI SOUP (см. рис. 4 ). При желании можно будет сразу установить в новую панель все новые команды из плагина для работы с Max Payne 2. Но для текущих задач нам достаточно только этих двух. Закройте окно Customize User Interface кнопочкой с крестиком в верхнем правом углу. Ни в коем случае не нажимайте кнопку Reset! Иначе все ваши изменения будут сброшены, и панель придется делать заново. Для удобства перетащите новую панель инструментов в место, где она не будет вам мешать. Панелька имеет “магнитные” свойства, и как только вы переместите ее (при нажатой ЛКМ) к какой-нибудь стенке, отпустите кнопку мыши, она

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 7

Рис. 7. В данном случае надо сказать решительное Нет!
немедленно к ней “прилепится”. Если же у вас небольшая диагональ монитора и каждый сантиметр рабочего пространства экрана на счету, то просто закройте панель. Вы можете вызвать ее в любой момент. Нужно всего лишь щелкнуть ПКМ на главной панели инструментов. В меню настройки интерфейса теперь появилась строчка с названием новой панели (см. рис. 5 ). Поставьте галочку напротив названия новой панели Remedy Tools (если вы назвали ее, как я), и панель появится. Снимите галочку, и панель исчезнет с экрана. Вторым абсолютно необходимым для создания моделей к Max Payne 2 действием будет настройка системных единиц измерения 3D Max. Плагин умеет обсчитывать геометрию моделей только в сантиметрах! Это необходимо для правильного определения расстояний и размеров. Открываете пункт меню Customize/Units Setup. В группе Display Unit Scale отметьте пункт Metric (метрическая система) и в списке ниже этого пункта выберите Centimeters (сантиметры). В этом же окне нажмите кнопку System Unit Setup. В группе System Unit Scale (из появившегося окна System Unit Setup ) установите размер одной системной единицы равным одному сантиметру (см. рис. 6 ). Закройте оба окна кнопками ОК. Мы закончили предварительные работы по настройке интерфейса. Теперь модели из 3D Max и редактор MaxEd будут дружить.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 8

Рис. 8. Готовая dds-текстура, вместе с MIP-картой.
Великолепная коробка Как и было обещано, весь процесс покажем на простейшей модели, которую может сделать даже инвалид по зрению, потерявший очки. Это будет самая популярная модель авторов учебников по моделированию в 3D Max — картонная коробка, она же Box , король примитивов (в смысле — простых объектов). Все моделлеры когда-то начинали с нее… И не стоит ухмыляться. Несмотря на простоту, на ней можно будет показать все основные моменты производства моделей для Max Payne 2. Сама “модель” создается легким движением руки. Нажмите кнопку Geometry командной панели Create (находится у правой стенки, под главной панелью инструментов). В списке типов создаваемых объектов по умолчанию стоит Standard Primitives. Это то, что нужно. Ниже, на плавающей панели в группе Object Type , нажмите кнопку Box. Курсор станет похож на перекрестье прицела. В проекции Top (вид сверху) “прицельтесь” и, не отпуская нажатой ЛКМ, двигайте мышь. За курсором следует увеличивающаяся рамка. Это основание будущей Box-коробки. Кстати, если вы “русифицировали” интерфейс своего 3D Max, то вместо названия Box на кнопке, скорее всего, будет значиться Коробка. Вообще-то этот примитив (во множественном числе)

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 9

Рис. 9. Бывший Box стал похож на картонную коробку.
используется как строительный кирпичик для самых сложных моделей. По какой причине разработчики 3D Max так его обозвали — неизвестно. Тем более неизвестно, по какой причине “русификаторы” использовали прямой перевод слова Box. Но в отличие от них, у нас все по-честному. Мы действительно делаем картонную коробку (поэтому далее Box будет обозначать только название кнопки). Как только основание коробки будет достаточного, на ваш взгляд, размера, отпускайте ЛКМ. Не нажимая кнопок, двигайте мышь вверх (или вниз) по оси Z. Коробка будет расти вверх (или вниз). В окне Front (вид спереди) контролируете ее рост. Как только нужная высота будет достигнута — нажимайте ЛКМ. Честно говоря, совершенно неважно, каких размеров коробку вы построили. Все равно ее величину надо отрегулировать для соответствия предметам в Max Payne 2. Переведите взгляд на плавающую панель. Там открыта группа параметров вашей коробки ( Parameters ). В первые три поля Length (длина), Width (ширина), Height (высота) введите значение 160. Обратите внимание, что размеры в этих полях даются в сантиметрах (если вы правильно установили единицы измерения). Такие объемы не позволят затеряться вашей коробке при установке на уровень. **

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 10

**
Рис. 10. Выбираем тип устанавливаемого объекта — каркас, состоящий из треугольных полигонов.
Теперь нажмите кнопку Select Object на главной панели инструментов. Щелкните ЛКМ на коробке (вы ее выделили). Нажмите ПКМ. Из всплывшего меню выберите пункт Convert To:/ Convert to Editable Mesh. Ваша коробка будет преобразована в редактируемую сетку. Геометрия “модели” готова. Сохраните полученное. Модель надо приодеть в подходящую текстурку. Для этого на время покинем 3D Max. Еще раз про текстуры Изготовление текстур подробно описывалось во второй статье цикла по редактированию Max Payne 2. Напоминаю основные моменты. Нельзя взять текстуры из игровых уровней. После экспорта уровня из редактора они становятся недоступными. Для рисования текстуры используется Adobe Photoshop. Текстуры желательно делать в формате dds. Чтобы Adobe Photoshop правильно воспринимал ваше желание работать с dds, надо установить для него специальный плагин. Этот плагин неоднократно выкладывался на нашем компакте. Также его можно скачать с сайта разработчиков фирмы NVIDIA ( http://developer.nvidia.com ).

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 11

Рис. 11. Коробка уже в редакторе, но еще не в игре.
Если рисование в школе не было вашим любимым предметом, проблему можно решить по-другому. Надо найти готовые картинки и перевести их в формат dds. Для текстур можно использовать и готовые dds-файлы. Например, на диске The Elder Scrolls III: Tribunal (от фирмы ) в папке …\Data Files\Textures лежит огромное количество отличных текстур, практически готовых к употреблению. Будет только одно замечание. При использовании в своих уровнях рисунков, взятых где-либо, их надо предварительно обработать. Даже если они уже будут представлены в формате dds! Обработка заключается в следующем. Устанавливаете плагин для распознавания формата dds программой Adobe Photoshop. Открываете в ней нужный рисунок. Вас спросят — загружать ли MIP-карты? Отвечайте “ Нет ”. Это очень важный момент (см. рис. 7 ). Картинка загрузится в программу. На экране будет показан только сам рисунок. Теперь сохраняйте текстуру в формате dds (выбрать пункт меню File/Save a Copy , формат сохранения dds ). Не меняя никаких установок в окне опций сохранения dds -файла, нажимайте Save. При указании пути сохранения укажите на исходный файл (который вы открывали в Photoshop ). На вопрос программы, переписать ли существующий файл, отвечайте утвердительно. Все, обработка закончена. Она позволит избежать проблем с запуском уровня в Max Payne 2. Только не забывайте, что использование неизмененных текстур из источников, которые никак не относятся к Max Payne, может обернуться обвинением в нарушении авторских прав… Лучше все-таки самим похудожничать, или попросить кого. Во всяком случае, для коробки, о которой пока идет речь, многого не нужно. Должно получиться что-нибудь вроде этого (см. рис. 8 ).

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 12

Рис. 12. Выбираете пункт меню Start Example Level.
Экспорт надо подготовить Наложение текстур на модели в 3D Max неоднократно описывалось в журнале за последнее время. Не буду на этом долго останавливаться, только кратенько напомню основные моменты. Для наложения текстур используются особые координаты UVW. Для простоты можете считать их аналогами обычных координат XYZ. Чтобы примерить текстуру на модель, каждая ее сторона должна иметь проекцию координат UVW. Для этого используются модификаторы UVW Map или Unwrap UVW. Разница в том, что первый создает проекцию сразу всей модели на поверхность заданной фигуры (например, плоскость, цилиндр или шар). Второй же позволяет накладывать текстуру на каждый полигон по отдельности. UVW Map используется чаще всего для объектов с простой формой. Для нашей коробки воспользуйтесь именно им, выбрав в качестве поверхности Box. В нашем случае это подходит идеально. Как только координаты UVW будут сгенерированы для стенок коробки, сверните стек модификаторов. Т.е. щелкните ПКМ на названии UVW Mapping (так выглядит UVW

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 13

Рис. 12. Установка опций физики в окне свойств объекта.
Map в окне примененных к модели модификаторов) и выберите во всплывающем меню команду Collapse To. Появится предупреждение, что отменить это действие будет невозможно. Жмите кнопку Yes , терять уже нечего. В результате примененный модификатор из списка исчезает. Все выглядит так, как было до его применения. Однако координаты UVW остались включенными в объект. Теперь создавайте материал на основе вашего рисунка (как уже неоднократно описывалось в статьях по моделированию в 3D Max). Примените полученный материал к коробке и наблюдайте результат в окне Perspective (см. рис. 9 ). Коробка готова. Осталось применить к модели спецсредства из созданной нами панели Remedy Tools. Сохраните, пока еще не поздно, вашу модель и приступим. Выделите коробку. Вызовите панель (если вы убирали ее с экрана). Нажмите кнопку TRI SOUP. На первый взгляд, на экране не произойдет никаких видимых изменений. Не надо больше мучить эту кнопку! Она нажимается один раз. Этим нажатием каждая грань модели превращается (специально для Max Payne 2) в отдельный полигон. Для сохранения модели в игровом формате нажимаете кнопку EXP ASI. Указываете путь и имя для сохраняемого файла. Рекомендую сделать для моделей и прилагаемых к ним текстур специальную папку. Если все сделано как учили, то индикатор сохранения быстро закончит операцию и исчезнет с экрана. При возникновении проблем — появится предупреждение. Наиболее вероятными сообщениями об ошибках (и их причинами) могут быть: 1. Неправильная установка единиц измерения. Помните, они должны быть в сантиметрах. Повторите операцию по установке правильных единиц, как было описано выше. 2. Проблемы с нормалями. Это плохое сообщение. Скорее всего, для игры все стенки вашей модели будут повернуты вовнутрь. Посмотрите, как выглядит модель в редакторе (читайте, как это сделать, ниже). Если все так и есть, вернитесь в 3D Max и переверните стенки в режиме Element кнопкой Flip (из группы Normals свитка параметров модели). Если никаких посторонних сообщений нет, поздравляю. Вы закончили с 3D Max и готовы к установке модели в игру.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 14

Рис. 13. Это всего лишь карта проекций пакета с молоком…
3D в игру! Если вы добрались до этого этапа, то все остальное покажется сущей ерундой и приятным времяпровождением. Даю инструкции коротко и по делу: 1. Загружаете в редактор свой уровень. 2. Переходите в режим F3 (напоминаю, режимы меняются нажатием одноименных клавиш на клавиатуре). 3. Заводите белый квадратик (маркер), следующий за курсором, в то место, где предполагается установить объект (в нашем случае это коробка). Напоминаю, маркер передвигается от одного узла (пересечения линий) разметочной сетки к другому. Чтобы выровнять сетку в нужной плоскости (например, по поверхности стола), нужно перейти в режим F4 , выделить эту поверхность и нажать комбинацию клавиш Shift + A (плюс означает, что обе клавиши надо нажимать одновременно). После выравнивания переходите в режим F3 и устанавливайте маркер точно в то место, где будет стоять ваш объект. 4. Нажимаете клавишу N (режим F3!). 5. В окне New Entity выбираете пункт Triangle_Mesh и нажимаете кнопку ОК (см. рис. 10 ). 6. В диалоговом окне выбора пути находите вашу модель, сохраненную в формате asi. Как только она будет выделена, нажимаете кнопку Открыть. Модель немедленно появляется в видовом окне редактора. Причем в той точке, где в это время находится разметочный маркер. 7. Критическим взглядом оцениваете свои труды. Если место для модели оказывается неудачным, то переходите в режим F5 , выделяете модель и двигаете ее (клавиатурными стрелками или мышью) в более подходящее место (см. рис. 11 ).

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 15

Рис. 14. Тот же пакет молока, но уже с “Max Payne 2” текстурой.
8. Отлично, все выглядит так, как задумано. Сохраните уровень под новым именем (чтобы иметь предыдущую версию уровня) через меню File/Save As. Теперь выбирайте пункт меню File/Export. Укажите имя экспортируемого файла и запомните его. Закрывайте редактор. 9. Откройте файл levels.txt , который находится по адресу …\Game\data\database\levels\work в базовой папке с инструментами. В этом файле внесите изменения в строку “ Level = файл_ уровня.ldb; ” из группы [ExampleLevel]. То, что стоит после знака равенства, должно быть названием файла, которое вы запомнили в пункте 8. Например, если вы назвали экспортируемый файл MaySuperLevel.ldb , то после изменения строка будет выглядеть так: Level = MaySuperLevel.ldb; Более подробно о редактировании файла levels.txt мы говорили в первой статье цикла по MaxEd 2. Сохраните изменения в файле levels.txt. 10. Запускайте версию Max Payne 2, предназначенную для разработки. Для этого заходите в базовый каталог инструментов (по умолчанию MAXPAYNE2DEV ). Отыщите папку Game и в ней дважды щелкните ЛКМ на файле MaxPayne2.exe. Загрузится специальная версия игры. 11. В игровом меню выбираете новый пункт Start Example Level (см. рис. 12 ). После загрузки вашего уровня найдете свой 3D-объект точно в том месте, где он был оставлен вами в редакторе. У пользователей Windows 98 могут возникнуть сложности при установке объектов. В этой системе редактор работает не совсем корректно. Объект может в редакторе быть невидимым. Если после объект не видно в видовом окне редактора, проверьте панель иерархии. Если в ней появился новый объект (как правило, с названием Box), то перейдите в режим F5 и дважды щелкните ЛКМ на строке объекта в панели иерархии. После этого в видовом окне объект будет подсвечен зеленым цветом. Его можно будет увидеть и перемещать.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 16

Рис. 15. Преобразование коробки в динамический объект.
Повелители свойств Вы, несомненно, заметили интересную особенность объекта. Главный герой обрел странную способность проходить сквозь коробку. Он не считает ее препятствием. Кроме того, пули проходят через объект, не оставляя на нем никаких видимых следов… Все эти странности происходят оттого, что новому объекту в редакторе был присвоен набор свойств, заданный по умолчанию. Чтобы вернуть его в лоно физических законов, надо вернуться в редактор и поменять настройки объекта. Выполняете следующие действия: 1. Загрузив уровень в редактор, переходите в режим F5. 2. Выделите объект и нажмите клавишу Enter. На экран будет выведено окно свойств объекта. 3. Установите галочки напротив свойств Collisions , Bullet Collisions , Character Collisions , — в группе Physics (см. рис. 12 ). Теперь этому объекту в игре будет обеспечена “непроходимость” — и дырки от пуль при попадании. Коснемся геометрии объектов. Надеюсь, вы не думаете, что устанавливать можно только такие простые объекты, как Box-коробка? Конечно, нет! Можно реализовывать довольно смелые фантазии. Надо только проявлять умеренность в

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 17

Рис. 16. Необходимые свойства динамического объекта — “картонная коробка”.
количестве полигонов. Кроме того, придется использовать более сложный вариант наложения текстур. Вместо модификатора UVW Map использовать Unwrap UVW. Текстуры рисовать отдельно для каждой стороны объекта и размещать их в одном файле. Т.е. создавать текстурную карту (см. рис. 13 ). Как делать карты проекций, как создавать текстуры на их основе, мы неоднократно писали в статьях по работе с 3D Max. Процесс действительно трудоемкий. Но и результат гораздо интереснее. Особенно если подойти к работе творчески. Например, выбрать реальный объект в доступном месте — на кухне, в ванной, да просто у себя на столе — и смоделировать его в 3D Max. А потом взять цифровой фотоаппарат, отснять объект с разных сторон и эти фотографии использовать в качестве основы для текстуры. Получается гораздо быстрее, чем рисовать. И смотрится совсем неплохо (см. рис. 14 ). Поговорим теперь о применении объектов. “Физика” в примерах После регулировки отдельных свойств коробка научилась “работать” с пулями и стала непроходимой насквозь. Но на воздействие игрока (например, на хороший удар ногой) она никак не реагирует. Чтобы научить ее этому трюку, надо добавить физические свойства. Делаем следующее: **

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 18

Рис. 17. Добавление строки, позволяющей объекту вести себя физически правильно.1.Загрузив уровень в редактор, перейдите в режимF5.2.Выделите объект (в нашем случае коробку) щелчком ЛКМ. Выделение обозначается подсветкой зеленым цветом.3.Выводите на экран всплывающее меню режимаF5, нажав среднюю кнопку мыши (далееСКМ). Выбираете пунктMake Selection Dynamic**(см.рис. 15). Отвечайте утвердительно на пару заданных редактором вопросов по поводу преобразования.4.В режимеF5выделите объект. Откройте окно свойств (клавишейEnter). Установите галочки против следующих опций:Cast No Shadow,Collisions,Bullet Collisions,Character Collisions. Первое необходимо, чтобы тень не осталась на месте после передвижения объекта. Остальные регулируют разного рода столкновения. Раскройте список физических материалов (Physical Material) и выберите наиболее подходящий для объекта. Поскольку я делал картонную коробку, то выбран материалcardboard_hollow(см.рис. 16). Материалы в этом списке называются “физическими”, поскольку несут в себе информацию для игры о свойствах объекта, таких как вес, звуки при движении и т. п. В результате движение объекта будет сопровождаться анимацией подходящего типа. Для закрытия окна свойств объекта нажмите кнопкиApplyиOK.5.Вызовите экранFSM(Finite State Machines), выбрав соответствующий пункт меню (вызываемого нажатием СКМ) или клавишейB.6.Выделяете группуStartupи в правой половине окна добавляете строчкуthis- >DO_EnablePhysics(true);(см.рис. 17).7.Сохраните изменения в уровне и экспортируйте его в папкуWork инструментальной базы (как было описано выше). Теперь, запустив уровень в игре, можно легким движением ноги придать вашему объекту упорядоченное перемещение. Коробка-Box больше не будет пугать своей железобетонной монументальностью.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 19

Рис. 18. Категория предварительно созданных объектов.
Prefabs Неспроста столько времени я уделял 3D-объектам. В отличие от многих редакторов, в MaxEd нельзя использовать что-либо из готовых уровней разработчиков. Тут все приходится делать самим — и текстуры, и объекты. Это могло бы стать непреодолимым препятствием для многих. Но есть одна лазейка, которая значительно облегчает задачу. И называется она — prefabs. Сам термин мог встречаться вам и раньше. Но, поскольку разработчики не пришли к единому мнению в терминологии, смысл его в MaxEd может отличаться от привычного по другим редакторам. Например, примерно то же самое понятие в UnrealED называется mesh. Prefabs (pre-fabricated object), буквально, — предварительно изготовленные объекты. Фактически, это может быть все что угодно — столы, стулья, стойка бара, шест для стриптиза… Помимо самой геометрии, prefabs могут содержать триггеры, скрипты и другие элементы невидимого управления. Идея состоит в следующем. Вы делаете объект. Полностью его “упаковываете” и сохраняете как prefab (файл с расширением pre ). Причем все, что включал в себя ваш объект (например, текстуры), будет сохранено в этом файле. После этого любой желающий может легко и просто включить этот объект в свой уровень. Для этого ему понадобится только доступ к вашему файлу. Именно обмен такими готовыми к употреблению объектами позволит модостроителям создавать целые коллекции самых разнообразных предметов.

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 20

Рис. 19. Изменение установленного prefab.
Для демонстрации подключения prefab используем заготовки разработчиков из состава Max Payne 2 Tools. Откройте MaxEd и загрузите свой уровень. В режиме F3 вызываете окно объектов (нажав клавишу N ). Выбираете из списка типов Prefabs Parent (см. рис. 18 ). Как только вы нажмете кнопку ОК , в видовом окне редактора появится розовая полусфера, а на экране — окно с ее свойствами. Закрывайте окно свойств. Если сейчас загрузить карту в игру, то на месте этой сферы ничего не будет. Чтобы сделать из пустого места дверь, надо добавить необходимые элементы. Переходите в режим F5. Выделяете розовую полусферу, которая обозначает корневой (изначальный) уровень вашего prefab. Перемещаете ее в проем, который надо прикрыть дверью. Вызываете на экран всплывающее меню (нажав СКМ). Выделяете пункт меню Prefab/Change This (см. рис. 19 ). Новое окно, которое называется Prefabs , содержит полную информацию обо всех установленных на этом уровне prefabs. Если только они есть. Для того чтобы добавить новый объект-prefab, нажимаете кнопку Add. Вам будет предложено указать путь до файлов с расширением pre. Открывайте папку Prefabs , которая находится в каталоге с инструментарием. Там находятся 3 файла-заготовки от разработчиков. Поскольку мы собрались устанавливать дверь, выбирайте door_wood.pre. Это дверь, которая уже умеет открываться и закрываться, реагируя на действия игрока. Закрывайте окно кнопкой ОК. В месте расположения розовой полусферы **_

МАКСимум от МАКСимума. Создание уровней для Max Payne 2. Часть 4 - фото 21

_**
Рис. 20. Полнофункциональная дверь выглядит сложно.
появится дверь. Поскольку в ее состав входит много управляющих элементов, она выглядит состоящей из множества пересекающихся полупрозрачных блоков (см. рис. 20 ). Остается только развернуть ее нужным образом. Для этого выделяете розовую полусферу и вращаете ее куда нужно. Кроме того, может потребоваться доработка дверного проема, если он окажется по размеру больше или меньше двери. Сохранив уровень и загрузив его в игру, можно примерить на себя роль швейцара, закрывая и открывая свежеустановленную prefab-дверь. Создав законченный объект (который может быть просто симпатичной 3D-формой), сохраняете его в качестве prefab через всплывающее меню (в режиме F5 , нажать СКМ) Prefab/Save As. *** * *** На этом закончим рассказ о непростых пакетах с молоком, поразительных картонных коробках и других чудесах 3D Max. На очереди новое чудо света из MaxEd — в следующий раз мы избавим товарища Макса от одиночества! На уровне появится долгожданный противник. Вы сможете, наконец, удовлетворить зов крови, размазать тела по свежесклеенным текстурам, полюбоваться серыми кляксами мозгов на полу под ярким светом установленных ранее светильников. Врагам не спрятаться за двигающимися картонными коробками! Ведь кто-то должен ответить за долгий период мирного строительства на протяжении четырех журнальных номеров? Надо разрядить накопленную энергию. Мы поможем сделать это комфортно. Враги будут подчинены вашей воле и полностью зомбированы средствами редактора. Они не смогут быть глупыми, поскольку их действия пропишете вы сами, а мы только покажем, как это делается. Готовьтесь к песням свинца и — до следующего номера…

Комментарии
Чтобы оставить комментарий,Войдите или Зарегистрируйтесь