Здравствуйте. Вы находитесь на сайте Unreal Level. Данный ресурс посвящен редакторам карт игр серии Unreal, UT и Gears of War. Основная цель сайта , помочь всем желающим освоить любой из редакторов вышеперечисленных серий. Наибольшим приоритетом на этом сайте, обладает редактор UnrealED for Unreal Engine 3 и редактор движка Unreal Engine 3.5, входящий в комплект разработки UDK, поскольку это наиболее актуальная на сегодняшний день технология.
Attaching Actors
автор: FACH | 12 Октября 2010 | Просмотров: 3450

Автор: Джеймс Голдинг, Даниэль Райт

Перевод: AlexUT, FACH

Оригинал: Attaching Actors

 

Введение

В UE3 иногда есть необходимость прикрепить один объект вашего уровня к другому. Например, прикрепление источника света к движущемуся лифту, эмиттер системы частиц к крану, или меш к кости анимированного персонажа. В этом уроке подробно описано, как это сделать в Unreal редакторе.

 

Динамические актеры

Перво-наперво стоить запомнить, что любой статичный предмет не способен двигаться в игре, так что Вы можете даже не пытаться прикрепить его к какому-либо предмету, т.к. это работать не будет. Например, Вам не стоит даже пробовать прикрепить статический меш к чему либо. Вместо этого используйте муверы (InterpActor). Это же касается источников света - используйте  LightMovable, вместо простых Light.

 

Точка крепления

У актеров есть свойство Base, в секции Attachment. К этому актеру данные актеры будут базироваться или крепиться. Если Вы хотите присоединить объект «A» к объекту «B», наилегчайший способ сделать это так:

 

1. Выберете объект «A».

2. Нажмите на замочек в окне свойств (в правом верхнем углу) - это закрепит окно свойств объекта «A», когда Вы выберите другой актер.

3. Выберете объект «B».

4. Откройте секцию Attachment и выделите поле Base в окне свойст объекта «A».

 5. Нажмите на зелёную стрелку, что бы присвоить выбранный объект «B» в это свойство.

 

Когда Вы выбираете объект, присоединённый к другому объекту, Вы увидите зелёную линию, ведущую к базовому объекту.

Сам же базовый объект окажется внутри зелёного квадрата. Это легкий способ проверки правильности настроек.

 

Rigid Bodies (твердые тела)

Вы не можете использовать объекты с PHYS_RigidBody в качестве базовых объектов. Для присоединения объектов использующих физическую симуляцию, нужно использовать специальный актер, играющий роль "сустава" (constraint).

 

Прикрепление объектов к костям

Так же возможно прикрепление актера к кости какого-либо скелетного меша. Это может быть очень полезно при снятии ролика - прикрепление оружия к кости руки, например. Для начала нужно установить Base, как это описано выше, затем впишите имя нужной кости в свойство BaseBoneName, всё в той же секции Attachment. При выборе прикрепления появятся та же зелёная линия и квадрат, но на этот раз он будет вокруг выбранной кости. При помощи этого можно проверить, правильно ли Вы ввели имя кости или нет.

 

Для того, что бы узнать имя кости, можно найти её в AnimSet, например. Для этого нужно дважды кликнуть на AnimSet в контент браузере.

 

bShadowParented

До выхода QA_APPROVED_BUILD_JULY_2008, bShadowParented создавал тень только для классов, родителем которых является BaseSkelComponent.

 

С QA_APPROVED_BUILD_JULY_2008  есть функция bShadowParented, тень присоединенных объектов будет относиться к родителю BaseSkelComponent, если она  будет включена, иначе будет показ всех теней компонентов текущих актеров, за тенью родителя, присоединенному к Base актеру. Это заставляет все привязанные компоненты бросать свои тени, и они будут накладываться друг на друга.

 

Механизм прикрепления

В UE3 существуют 2 механизма прикрепления:

 

SoftAttach

Этот механизм прикрепления подходит для Pawn, когда они стоят на объекте. Это стандартное "мягкое" прикрепление. С движением базового объекта, каждый кадр подсчитывается в линейном режиме, и объект пытается сохранить то же местоположение, применяя смещение. Это добавлено в любое движение актёра, так что игрок по-прежнему может бегать по верхушке движущегося объекта. Ежели игрок заступит за край, то он будет "вытолкнут" с объекта. Это может вызвать некоторые ошибки и объект может «соскочить» со своего базового объекта (он останется к нему прикреплён, однако его местоположение будет просчитано неверно).

 

HardAttach

Другой механизм прикрепления известен как Твердое прикрепление. Этот механизм гарантирует, что прикрепление всегда остаётся относительно своей базы по позиции и повороту, однако, в силу того, что этот механизм не просчитывает коллизию между прикреплением и окружением, его можно использовать только с не коллизионными прикреплениями (bBlockActors=FALSE).

 

Главное что стоит запомнить - если Вы видите, что объект медленно открепляется от своей базы, проверьте равенство или галку на bHardAttach.

 

Matineе

Matinee должен правильно обработать объекты, основанные на других объектах. Когда у Вас ключевой актер, который прикреплен чему-то еще, информация о его перемещении, будет рассмотрена относительно Базового объекта. Таким образом, легко установить актеров, которые перемещаются относительно других актеров (например, двери поезда). Кроме того, присоединенные Актеры должны обновляться в реальном времени, поскольку Вы вычищаете перемещения и анимацию в Matinee. Важная вещь состоит в том, что нужно установить свои присоединения прежде, чем анимировать их в Matinee. Выполнение этого после того, как Вы установили дорожку перемещения, может привести к запутывающим результатам.

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

#1 написал: stass
12 Октября 2010 20:49 | ICQ: Не Указано |


Группа: Посетители
Регистрация: 9.11.2009
Спасибо,урок супер
Публикаций: 0 | Комментариев: 7      
#2 написал: ScorpyX
14 Октября 2010 13:03 | ICQ: 333879808 |


Группа: Активист
Регистрация: 13.08.2009
удобненько \ спасибо за хороший перевод


--------------------
Публикаций: 0 | Комментариев: 45      
Информация
Посетители, находящиеся в группе Гости, не могут оставлять Комментарии в данной новости...






При копировании материалов, активная ссылка на UNREAL-LEVEL.RU обязательна!
© 2008—2012, UNREAL-LEVEL.RU. Все права защищены.