|
| |||
|
| |||
| |
Здравствуйте. Вы находитесь на сайте Unreal Level. Данный ресурс посвящен редакторам карт игр серии Unreal, UT и Gears of War. Основная цель сайта , помочь всем желающим освоить любой из редакторов вышеперечисленных серий. Наибольшим приоритетом на этом сайте, обладает редактор UnrealED for Unreal Engine 3 и редактор движка Unreal Engine 3.5, входящий в комплект разработки UDK, поскольку это наиболее актуальная на сегодняшний день технология. |
|
Ваш первый уровень
автор: FACH | 7 Июля 2009 | Просмотров: 26967
Содержание:
В этом разделе мы будем строить наш первый уровень, используя в Unreal редакторе CSG моделирование (BSP геометрию). Выберите File->New. Далее в окне с вариантом выбора стиля геометрии выбираем Additive. Прежде чем мы начнем работать, выберем имя и сохраним наш файл. Для настоящего испытания мы будем использовать «DM-CSGTest01». Выберите File->Save. Unreal работает лучше, если вы создали свою карту в C: Documents and Settings .... My Documents My Games Unreal Tournament 3 UTGame Unpublished CookedPC CustomMaps .. Давайте также внесём некоторые изменения в настройки конфигурации просмотра. Нажмите View-> Viewport ![]() Нажмите кнопку Unlit ![]() В центре вашего пустого уровня находится красный wireframe куб. Это строительный браш. Выберите строительный браш ЛКМ, а затем щелкните на CSG: Add ![]() Это действие добавит куб в центр уровня. ![]() Если вы переместите строительный браш, вы увидите, что куба остается - в 2D виде синий wireframe квадрат. ![]() Теперь выберите синий additive браш (в одном из 2D видах), и переместите его в сторону. ![]() Что получилось?! Шахматный куб не перемещается вместе с брашем! Когда вы изменяете CSG, Unreal требует от вас сделать Rebuild Geo Нажмите на кнопку Build Geometry for Current Level ![]() Итак, вы хотели создать помещение. Можно добавить шесть кубов, составляющих стены, пол и потолок, но есть лучший способ это сделать. Помимо Additive функции, Unreal имеет Subtractive, он вырезает отверстие в Additive браше. Выберите строительный браш и переместите его так, чтобы он частично пересекался с вашим Additive брашем, и нажмите кнопку CSG: Subtract ![]() Если вы переместите строительный браш, вы увидите, что часть вашего куба вырезана и появился желтый subtractive квадрат в 2D виде. ![]() Попробуйте передвигать subtractive браш. Опять же, нужно перестроить геометрию для того, чтобы обновить изменения в 3D-виде. Кроме того, можно клонировать ваши additive или subtractive браши, копируя и вставляя их (ctrl-c ctrl-v). Вы можете заметить, что иногда subtractive браш ничего не вырезает из additive браша. ![]() Это объясняется тем, что всё зависит от порядка, в котором они строятся, как на рисунке ниже. ![]() Если мы хотим, чтобы subtractive браш вырезал из обоих additive брашей, мы можем сделать его последней командой в списке. Выберите subtractive браш, щелкните правой кнопкой мыши по нему и выберите Order->To Last. ![]() Теперь браши находятся в порядке, в котором мы хотим… ![]() И если мы перестроим геометрию, мы получим результаты, которых мы хотим. ![]() Неоспоримо, что было бы сложно строить уровень исключительно из кубиков. Давайте посмотрим на некоторые более развитые возможности редактирования геометрии. Сохраним свою работу, создадим новый файл и сохраним его как DM-CSGTest02.upk. Создайте новый additive браш затем нажмите кнопку Geometry Mode (более подробно об этом инструменте в другом туториале) в верхнем левом углу окна. Это открывает диалоговое окно Geometry Tools
![]() Работа с ребрами это самый легкий путь для начала, так что нажмите кнопку Edge ![]() Убедитесь, что Вы в режиме World (а не Local)… ![]() Затем выберите ребра, и попытайтесь передвинуть их. ![]() Теперь наш куб является удлиненным прямоугольным ящиком. (Не забудьте перестроить геометрию.) ![]() Вы заметите, что, когда вы выбрали ребро в 2D виде, фактически были выбраны два ребра в 3D-виде (в моем случае, сверху и снизу.) Это очень удобно. Но вы также можете сделать пандус форму, выбрав только одно из ребер в 3D-виде, а затем передвинуть его. ![]() Редактирование вершин также довольно мощный инструмент. Переключимся в режим редактирования вершин ![]() Вы можете выбрать любую вершину, и переместить её. Вы также можете, зажав ctrl выбрать несколько вершин, или зажав ctrl+alt выделить их ЛКМ красным прямоугольником. ![]() Заметим, что зажатые ctrl+alt и выделение ЛКМ красным прямоугольником работает и в основном режиме редактирования, а не только в редактировании геометрии. Подошло время создания нашей первой комнаты. Сохраните работу, создайте новый файл и сохраните его как DM-CSGTest03.ut3. Мы хотим, чтобы наша комната быть достаточно большая для игрока. Строительный браш имеет размеры 256x256x256 юнитов по умолчанию, а игрок составляет 96 юнитов. Чтобы не чувствовать себя несколько стесненными, давайте сделаем наш куб больше: 1024x1024 и 512 единиц высотой. То, что мы собираемся сделать, это создать additive куб а потом создать в нём чуть меньший по размеру subtractive куб. Выберите строительный браш и убедитесь, что вы находитесь в режиме геометрии. Кроме того, размер вашей сетки Ваши настройки должны выглядеть примерно так. ![]() ![]() Перетащите ребра строительного браша. ![]() Нажмите CSG :Add ![]() Теперь сдвиньте ребра строительного браша (в обоих верхнем и боковом видах) на одну клетку и нажмите CSG :Subtract ![]() Мы уже почти готовы играть, но нам нужны некоторое освещение, и мы должны сказать Unreal, где игрок должен появляться. Часть 2
В этом разделе мы будем размещать различные акторы на карту, поэтому в основном будем работать в 3D-виде. Прежде всего, мы будем размещать свет (подробно о свете в другом туториале). Это легко - ПКМ на основании, а затем нажмите кнопку Add Actor->Add Light (Point). ![]() Свет должен появиться. Перейдите на Lit ![]() Перенесите лампочку чуть выше пола, примерно в середину зала. Вы также можете сделать радиус света более и более мелким, используя Scale инструмент. Попробуйте. ![]() Последняя вещь, которую нам необходимо сделать, это ребилд освещения (Build Lighting). Нажмите на Build Lighting инструмент ![]() Последнее, что нужно сделать, прежде чем мы сможем играть - создать место старта игрока. Так же щелкните ПКМ на ловархности пола, а затем нажмите Add Actor->Add PlayerStart. PlayerStart должен появиться на некоторой высоте над землей. ![]() Сохраните свою работу. Чтобы запустить уровень, нажмите кнопку Play in Editor в верхнем правом углу окна. (Это выглядит в виде джойстика ![]() ![]() К этому моменту вы должны быть в состоянии создать вторую комнату и соединить их коридором без каких-либо указаний, но я воспользуюсь этой возможностью, чтобы показать несколько трюков. Сохраняйте Вашу работу, а затем сохраните его в новый файл DM-CSGTest04.ut3. Сначала мы создадим вторую комнату, а затем и коридор. Вместо строительства второй комнаты с нуля выберите первую, и все в ней, а затем клонируйте. В одном из 2D видов с зажатыми клавишами ctrl+alt+ЛКМ выделите красным прямоуголькиком всю комнату. ![]() ![]() Нажмите кнопку Rebuild Geometry ![]() Время создать коридор. Давайте строить его с нуля. Нажав на кнопку Cube ![]() … если вы щелкните правой кнопкой мыши по нему (
![]() Нажмите на Build, строительный браш разместите между вашими комнатами и нажмите на CSG :Add ![]() Теперь воспользуйтесь Geometry Tools и измените размер строительного браша. Щелкните на CSG :Subtract ![]() Вернитесь внутрь помещения в 3D-виде и включите режим Lit ![]() Можно добавить дополнительный источник света для коридора. Добавить свет можно, удерживая клавишу L и щелкнуть ЛКМ на полу. Перестройте освещение, сохраните свою работу, и проверьте свой уровень! ![]() Давайте добавим ботов в уровень.Убедитесь, что ваша карта имя начинается с DM (название), и сохраните вашу работу. В редакторе, нажмите Build All (рядом с Build Lighting.). ![]() Сохраните игру и запустите её. Откройте консоль, нажав Tab или F10, и наберите addbots 1. Бот должен появиться и вы сможете убить его! ![]() Чтобы добавить больше ботов, надо добавить больше PlayerStart, перестроить уровень, запустить его, а в консоли набрать addbots [число]. Остальные консольные команды, для тестирования карты, будут рассмотрены позже. Добавление игровых элементов для вашей карты.
В мы добавим основные элементы геймплея в вашу карту. Как вы знаете, в Unreal Tournament 3 существует несколько типов карт. Название создаваемой вами карты всегда должно начинаться с соответствующего префикса для того, чтобы движок мог определить, в какой тип игры Вы хотите играть. DM- (Deathmatch, Team Deathmatch, Due, DARKMATCH). CTF- (Capture the Flag). VCTF- (Vehicle Capture the Flag). WAR- (Warfare). В этом учебном пособии мы создадим Deathmatch карту. Начните с создания новой карты или открытия существующей карты, которую вы создали. Сохраните его как DM-GameplayTest01.ut3 в следующую папку: My DocumentsMy GamesUnreal Tournament 3UTGameUnpublishedCookedPCCustomMaps Создайте вашу карту имеющую, по крайней мере, три зала, соединенных коридорами, расположенными не по прямой линии. Что-нибудь в таком духе: ![]() Если вы назвали её должным образом, Unreal признает это как deathmatch карту, и как только мы создадим надлежащие субъекты, Unreal позволит вам играть ее как Deathmatch, Team Deathmatch, или Duel карту. Вы, вероятно, заметили, что при ребилде карты появляется много ошибок, которые выглядят так. ![]() Unreal поддерживает до 16 игроков в Deathmatch, так что мы должны иметь по крайней мере 16 PlayerStart. Вы можете разместить новый PlayerStart, щелкнув правой кнопкой мыши на основании, выбрав Add Actor->Add PlayerStart. ![]() Делайте это до тех пор, пока у вас будет 16 PlayerStart, распространеных по всему вашему уровню. Расстояние между ними должно быть не менее 128 юнитов. (Помните, Вы можете нажать и удерживая перетаскивать СРЕДНЮЮ КНОПКУ МЫШИ в 2D, чтобы использовать инструмент измерения - "ЛИНЕЙКУ"). ![]() Ещё есть маленькая голубая стрелка, выходящая из центра PlayerStart. Она указывает направление камеры при респауне. Поворачивайте ваши PlayerStart так, чтобы они были направлены в разумное направление. ![]() Вы можете проверить вашу карту, нажав кнопку Play в редакторе (маленький черный джойстик в верхнем правом углу окна ![]() Если ваша карта отображается черной, вам, возможно, придется нажать клавишу Build All и повторить попытку, дабы построить освещение. ![]() Нажмите Tab, чтобы открыть консоль и введите addbots 1. ![]() Боты в вашем уровне выглядят глупо. Все, что они знают, это стоять в одной точке и стрелять в ближайшую цель. В настоящих уровнях существует сеть путей, которая соединяет все, что находится в уровне. Нажмите кнопку Build Paths в верхней части экрана. ![]() Вы можете просмотреть свою сеть путей, нажав на черную стрелку ![]() должны иметь линию, соединяющую их. ![]() Но что делать в ситуации, подобной этой, где PlayerStart не могут видеть друг друга? Мы определенно не хотим, перемещать PlayerStart, или добавлять новые. ![]() В редакторе имеется актор, который называется PathNode. Мы можем поместить его в коридоре, и редактор свяжет наши комнаты вместе. Кликните правой кнопкой мыши на полу, а затем выберите Add Actor->Add Pathnode. Или еще лучше использование клавиш - удерживая клавишу «.»(точка) нажать ЛКМ на полу. ![]() Вы видите значок Яблоко. Нажмите кнопку Build Paths, и вы увидите несколько соединений. Вам, возможно, придется перенести pathnode (и перестроить пути), а возможно и добавить несколько pathnode. ![]() Добавьте несколько pathnodes в своей карте и убедитесь, что каждый из них имеет соединение. Запустите игру, добавьте несколько ботов и вы увидите, что они теперь в состоянии передвигаться по всему пространству карты. Вам может потребоваться настроить сеть путей или добавить больше pathnodes. Вот несколько советов, с чего можно начать. В общем, нужно располагать pathnodes в следующих местах: - На каждом выходе или входе в комнату - В нижней и верхней части лестницы или пандуса - В любом месте, где коридор поворачивает за угол - В любом месте, где бот может прыгать вверх или вниз с чего нибудь - В любом месте, где бот должен иметь возможность использовать translocator - Вокруг любых крупных объектов внутри комнаты Вам НЕ нужно добавить pathnodes для этих мест: - Вдоль длинного прямого коридора - В углах пустой комнаты. В какой-то момент Вы, наверное, разместите pathnode там, где он бесполезен, как на картинке ниже. (Путь, уже идет по всей комнате, так зачем нам нужно дополнительное яблоко в середине?) ![]() Если у вас есть ненужные pathnodes, вы будете получать предупреждения, как это: ![]() (удалить pathnodes, перечисленные в предупреждающем сообщении или переместить их в другое место). Вы заметили, что все пути имеют различные цвета и формы? ![]() Я не нашел полной документации по этому вопросу, но на практике: - Голубая линия означает путь в 32 юнита шириной в обе стороны, 64 юнита высотой - Зеленая линия означает путь в 128 юнитов шириной в обе стороны, 96 юнитов высотой - Белые линии означают путь с 256 юнитов шириной в обе стороны, 204 юнита высотой - Пурпурные линии??? - Розовые линии означает траекторию диска транслокатора - Красные линии означают запрещённый путь - Прямые линии означают, что бот может бегать, прыгать или прогуливаться вдоль пути - Изогнутые линии означают, что бот должен использовать translocator для передвижения по этому пути Вы заметили, что pathnodes, как правило, соединены двумя линиями со стрелкой в конце каждой? Эти стрелки указывают направление, в котором проходит путь. В следующем примере, роботы могут свободно бегать между pathnodes на возвышении, но чтобы добраться до pathnode на полу они могут только прыгать вниз, и не могут вернуться обратно. Если необходимо, Вам, возможно, придется снизить возвышение, добавить пандус или некоторые лестницы, или добавить несколько небольших объектов, по которым игрок / бот может забраться. ![]() Таким образом, Вы можете запустить Ваш уровень, но вокруг нет оружия, аптечек и брони, уровень выглядит скучно. Мы можем получить оружие (и многие другие вещи) с помощью Actor Class Browser. Откройте ваш Generic Browser, а затем нажмите на вкладку Actor Classes (в верхней части окна) ![]() Найти pickups в списке трудно, если не знать, где искать. Все они скрыты в разделе NavigationPoint. Откройте NavigationPoint, затем PickupFactory, затем UTPickupFactory. Можно открыть вложенные папки, чтобы получить другие типы объектов, как Ammo, Armor, Health, Powerups и Weapon Lockers. ![]() Выберите один из пунктов (Скажем, UTPickupFactory_HealthVial.) ![]() Теперь щелкните ПКМ в редакторе в 3D окне, а затем нажмите Add UTPickupFactory_HealthVial Here. ![]() ![]() Большинство pickups (например health vial) просто требует, чтобы Вы поместили их в уровень. Но для pickups оружия и weapon lockers необходимо указать, какого рода оружие будет доступно. Разместите UTWeaponPickupFactory в вашем уровне (так же, как вы разместили health vial.) Убедитесь в том, что объект выбран на карте, а затем View->Actor Properties (или двойным щелчком на объекте, или нажмите F4). ![]() Каждый объект, даже статические меши и браши, имеют свойства, которые можно настроить. Есть много категорий в окне свойств, и свойства большинства из этих категорий (например Display, Movement, а также Object) используют все виды акторов. В большинстве случаев Вы меняете только свойства только конкретного типа актера, с которым вы работаете. В свойствах UTWeaponPickupFactory выберите категорию UTWeaponPickupFactory. ![]() Теперь из списка WeaponPickupClass Вы можете выбрать один из вариантов оружия. ![]() Если вы запустите игру, то оружие появится. ![]() Для WeaponLockers чуть более сложная настройка. Добавьте UTWeaponLocker_Content в ваш уровень, так же, как вы добавили UTWeaponPickupFactory. Откройте его свойства и откройте категорию UTWeaponLocker. ![]() Похоже, мы имеем целый список оружия, но сейчас ничего нет в списке. (Нажмите маленькие черные стрелки, вы увидите, что там ничего не существует.) Чтобы добавить больше оружия, нажмите маленькую зеленую точку в правой части окна. Вы увидите, что появилась новая строка. ![]() Откройте и выберите оружие точно так же, как Вы это делали ранее. ![]() Нажатие на зеленой метке несколько раз позволяет добавлять много оружия. ![]() И последнее замечание о pickups - когда вы делали ребилд, Вы, наверное, заметили предостережения, как это: ![]() Не стоит беспокоиться. Просто выберите Tools->Add Pickup Lights. ![]() Подсветка автоматически будет создана на каждом pickup, которому она необходима. Если Вы переместили или удалили pickup, подсветка будет обновляться надлежащим образом. ![]() Чтобы создать jump pad, вам нужно установить на карту jump pad base. Изменим свой уровень, добавив небольшое возвышение (128x256x128). ![]() Размещение jump pad такое же, как и размещение любых pickup. В Actor Classes browser NavigationPoint - это называется UTJumpPad. ![]() pathnode – конечная точка jump pad будет здесь. ![]() В окне свойств нашего jump pad (F4), нажмем на изображение замка (в верхнем левом углу окна свойств), это закрепит данное окно свойст именно для этого объекта.
![]() Теперь выделим pathnode и нажмём на зеленую стрелку в строке JumpTarget. Имя pathnode должно заполнить строку. ![]() Теперь перестроим пути. Если повезет, Вы увидите искривленную линию, идущую от jump pad к pathnode. Возможно Вы, как и я, получили сообщение об ошибке. ![]() В моем случае, мой потолок был слишком низким. Я поднял его и всё теперь работает отлично. Можно изменить параметр JumpTime в свойствах jump pad (я уменьшил до 1), что также отлично работает. Вы также можете столкнуться с проблемами, если jump pad расположен слишком близко к возвышению или pathnode находится слишком далеко от края возвышения. ![]() #1 написал: Mr.CG 30 Августа 2009 18:27 | ICQ: Не Указано |
#2 написал: FACH 6 Сентября 2009 00:45 | ICQ: 562039160 |
#3 написал: Collide 7 Ноября 2009 14:42 | ICQ: Не Указано |
#4 написал: 3dmax 30 Ноября 2009 16:55 | ICQ: Не Указано |
#5 написал: FACH 30 Ноября 2009 20:27 | ICQ: 562039160 |
#6 написал: 3dmax 30 Ноября 2009 20:30 | ICQ: Не Указано |
#7 написал: FACH 30 Ноября 2009 20:35 | ICQ: 562039160 |
#8 написал: F1tZ 6 Декабря 2009 18:42 | ICQ: Не Указано |
#9 написал: FACH 6 Декабря 2009 21:02 | ICQ: 562039160 |
#10 написал: F1tZ 7 Декабря 2009 15:18 | ICQ: Не Указано |
#11 написал: lodded 23 Декабря 2009 14:22 | ICQ: Не Указано |
#12 написал: FeL[[mAsTeR-X]] 23 Января 2010 16:00 | ICQ: Не Указано |
#13 написал: kuyan 24 Января 2010 21:05 | ICQ: Не Указано |
#14 написал: FACH 18 Февраля 2010 18:30 | ICQ: 562039160 |
#15 написал: Sky 8 Марта 2010 05:28 | ICQ: Не Указано |
#16 написал: FACH 8 Марта 2010 10:20 | ICQ: 562039160 |
#17 написал: Sky 8 Марта 2010 10:39 | ICQ: Не Указано |
#18 написал: FACH 8 Марта 2010 10:47 | ICQ: 562039160 |
#19 написал: Sky 8 Марта 2010 11:03 | ICQ: Не Указано |
#20 написал: FACH 8 Марта 2010 11:28 | ICQ: 562039160 |
#21 написал: Sky 8 Марта 2010 11:52 | ICQ: Не Указано |
#22 написал: FACH 8 Марта 2010 12:06 | ICQ: 562039160 |
#23 написал: Sky 8 Марта 2010 12:22 | ICQ: Не Указано |
#24 написал: Master_Deus 14 Марта 2010 16:08 | ICQ: Не Указано |
#25 написал: FACH 14 Марта 2010 18:11 | ICQ: 562039160 |
#26 написал: Master_Deus 15 Марта 2010 18:25 | ICQ: Не Указано |
#27 написал: FACH 15 Марта 2010 19:13 | ICQ: 562039160 |
#28 написал: Master_Deus 15 Марта 2010 20:06 | ICQ: Не Указано |
#29 написал: FACH 15 Марта 2010 20:13 | ICQ: 562039160 |
#30 написал: LORD-SWAROG 22 Марта 2010 11:25 | ICQ: Не Указано |
Информация
Посетители, находящиеся в группе Гости, не могут оставлять Комментарии в данной новости...
|
|
|
При копировании материалов, активная ссылка на UNREAL-LEVEL.RU обязательна! © 2008—2012, UNREAL-LEVEL.RU. Все права защищены. |