Добавлен , опубликован

Начнем с настроек.

Для удобной работы в Radiant необходимо создать в папке Doom3/base файл "autoexec.cfg" с таким содержанием (или добавить в него эти строки, если файл есть):
seta r_mode "-1"           //Выборочное разрешение 
seta r_shadows "1"         //Показывать тени 
seta com_allowConsole "1"  //Позволить вызов консоли через тыльду 
seta com_showFPS "1"       //Показывать частоту кадров 
seta r_customHeight "576"  //Выборочная высота 
seta r_customWidth "720"   //Выборочная ширина 
seta r_fullscreen "0"      //Оконный режим 
seta win_timerUpdate "1"   //Позволить обновлять окно при перемещении 
seta win_viewlog "1"       //Показать консоль в отдельном окне 
seta win_ypos "100"        //Позиция окна игры по Y 
seta win_xpos "100"        //Позиция окна игры по X 
developer "1"              //Режим девелопера 
disconnect                 //Пропустить заставку ID
Потом делаем ярлык и в него дописываем "+Editor", все редактор к работе готов, теперь у нас все под рукой. Для более полного удобства можно сделать меню с ярлыками ко всем доступным редакторам в Doom3. После запуска Radiant выглядит так:
Для начала разберемся с управлением и горячими клавишами. Посмотреть список доступных горячих клавиш можно в меню Help/Command list, главное – камера, она перемешается клавишами Ctrl + MOUSE3, а указать направление камеры можно просто нажав в нужной точке MOUSE3 (это в подокне XY Top).
Для перемещения по оси Z нужно в окне Z, нажать Ctrl + MOUSE3, в подокне CAM управление происходит хоткеем Ctrl + MOUSE2 (если просто зажать MOUSE2 то можно скролить вид сверху, ролик служит увеличением).
Можно менять вид в окне посредством нажатия батона Change views на главном тулбаре. Вроде с камерой разобрались. По ходу создания карты будем знакомиться с новыми хоткеями, пока остальное не важно.
Итак, мы должны сделать пол. Для этого нажимаем клавишу 4 (выставляется размер сетки на 8) и MOUSE1 (создание и изменение размеров объектов происходит именно ней) рисуем в окне XY Top нечто похожее на квадрат, в подокне Z меняем его высоту в одну секцию и перемещаем до уровня розового куба, теперь кликаем по закладке Media в подокне Inspectors и лазим в папке Textures и подбираем текстуру нам по душе, все текстуры более-менее удобно рассортированы по категориям, но можно слишком много потратить времени на поиск, поэтому сразу открываем Textures/textures/base_floor/a_bluetex1a_02 и не надрываемся, все текстуры, что мы выбрали или посмотрели автоматом добавляются в закладку Textures подокна Inspectors.
Теперь наше убожество выглядит так:
Теперь у некоторых чешутся руки запустить этот примитив, но нет, нужно на карту поставить хотя бы один источник света и место, откуда будет появляться игрок.
Нажимаем клавишу Esc (снимает выделение с предмета, выделить обратно Shift + MOUSE1 (можно также создать бокс, который будет касаться/быть внутри/обхватывать нужный для выделения предмет и просто нажать на панели инструментов один из батонов, предназначенных для выделения), а удалить - Backspace), кликаем MOUSE2 по свободному пространству подокна XY Top и видим меню, в котором перечислены Entities (объекты) которые есть в игре (пояснять значения всех объектов я не буду, поскольку это очень долго, но выставить параметры и узнать доступные параметры и описания данного объекта мы можем в закладке Entity подокна Inspectors), нам нужен info/info_player_start (откуда появится игрок в сингле) и light (свет, для недогадливых :)), создаем info_player_start и ставим его над нашим боксом, который служит полом, переходим в закладку Entity и кликаем по батону 90, тем самым, выставляя угол появления (можно также изменить параметр Name на более пристойное, но это так, для тех, кто любит порядок, к объектам, используемым только раз на карте можно не выставлять нормальное имя).
Теперь делаем свет, опять MOUSE2/light и располагаем его по центру нашего бокса, слегка выше уровня info_player_start. Сохраняем карту в папке Doom3/base/maps c именем "test_map" и компилируем, делается это просто – BSP/bsp noflood (можно и просто bsp, но если карта вышла глюкавая и имеет "лэки" (leaks), то она не скомпилируется), потом bsp/bspext (сейвимся еще раз – на всякие пожарные). Теперь жмем F2 и появляется жутко тормозящее окошко Doom3, в консоли печатаем "map test_map" и ENTER. Ждемс загрузки, и "О чудо, оно работает!" (или не работает, в зависимости от кривости ваших рук):
Так, возвращаемся в Radiant (жмем тыльду и кликаем по окну Радианта, закрыв просто окно дума мы убьем его навсегда и через F2 оно больше не появится) и доделываем карту – добавляем света, создаем стены, потолок, вставляем модель лампочки, делаем небольшой коридор со ждущим нас Импом (причем затриггеренным на появление из-за угла), приукрашаем карту кровищей и трупами, а также добавляем фоновую музычку.
Возникаем вопрос: "Как это все зделать? Старик ты что шутишь, сказал пару слов и лезешь на сосну без объяснений!", "НЕТ!" – сказал нервный iMiceman, сейчас все по порядку (кстати, текстуры лучше будет изменить при клонинге, потому что та, которую выбрал я не очень вписывается, можно например поставить плитку из папки washroom):

Делаем пол

Для нашего коридора – выделяем наш пол, клоним клавишей SPACE, изменяем размер, и ставим на право от игрока;

Создаем стены


8 раз клоним наш пол, изменяем размеры, расставляем стены (да, и лучше, чтоб они не пересекались с полом и другими стенами), клоним наш свет и добавляем его в коридор (потолок создадим в последнюю очередь – будет мешать выделять объекты);

Звук, монстр, триггер

MOUSE2/speaker, переходим в закладку Entity, в поле Key вписываем s_shader (звук который будет играть из этого источника), для выбора звука кликаем по батону Sound… и выбираем нужный звук (например, Sound Shaders/sound/music.sndshd/admin_haunted_office – вот вам и нервная фоновая музыка (в поле Val можно просто прописать admin_haunted_office)), потом ставим параметр s_looping на 1, и s_volume на 1, если вы не хотите пускать музыку через speaker, то можно создать MOUSE2/worldspawn и в нем выставить параметр music.
Звук есть, теперь, делаем триггер и монстра.
Триггер – MOUSE2/trigger/trigger_once, делаем его размером со стену что перед игроком, и ставим перед игроком. У триггера выставляем параметр target, а значение – imp1.
Теперь делаем монстра. MOUSE2/monster/monster_demon_imp, ставим его на пол и перемещаем в коридор. Теперь выставляем параметры (параметр - значение): name – imp1 (имя к которому обращается триггер при активации), angle – 315 (угол, направим его к стене, чтоб он выпрыгнул боком), trigger – 1 (появляется и делает on_activate по триггеру), on_activate – evade_right (список доступных анимаций рядом в листбоксе, можно заодно посмотреть превью нажав Play), и удалить параметр anim (можно оставить, но он не востребован), да, и слегка нужно расширить коридор – Имп слегка толстоват – может врезаться в стену.

Прибамбасы, изменяем текстуры на приличные, добавляем потолок

Cоздаем бокс, в списке текстур находим кровь (splat и т.д.), натягиваем, подгоняем размер, кликаем в меню по Patch/Simple Patch Mesh, жмем SHIFT + 2 (уменьшаем сетку), слегка повышаем уровень нашей крови над полом, чтоб не было пересечения, жмем 4 (нормальная сетка), ресайзим кровищу на вкус, клоним, меняем текстуры, короче закровавливаем карту.
Добавляем на карту какие-то модели для разнообразия (MOUSE2/New Model…), добавляем шотган (MOUSE2/weapons/weapon_shotgun), добавляем рагдолл толстого зомби MOUSE2/env/env_ragdoll_fatty (я добавил еще один - poppy). Меняем текстуры на пригодные из папки washroom, добавляем потолок клоня пол, поднимая до нужного уровня и ставя приличную текстуру. Добавляем через MOUSE2/New model… модель лампы и цепляем над потолком.
Выставляем небольшой light_radius у света (примерно, 200 200 200), делаем всякие примочки (MOUSE2/New model…) по вкусу и получаем в итоге (в моем итоге, я много чего изменил для того чтоб сделать карту более-менее приличной, например, изменил анимацию импа, теперь он кушает тётю, а при активации триггера невозмутимо встает, подходит и разбивает нам лицо, добавил кучу моделей для красоты, сделал за стеной боксы (иначе можно было пролететь через стену из-за пересечений)):
Скриншот из игры:
Все, карта готова, надеюсь мой краткий туториал поможет начинающим мапперам. Если что-то не получается то скачайте мою карту ( приложена к статье) и проверьте что у вас не так или мыльте на iMiceman@mail.ru (по дельным вопросам, вопросы типа: "У меня нет третьего батона на мышке, что делать?" не воспринимаются :D).