Понедельник, 29.04.2024, 17:04 Приветствую Вас Гость
Главная | Регистрация | Вход | RSS
Меню сайта
Категории каталога
Мои статьи [1]
Главная » Статьи » Мои статьи

Физика в Oblivion: добавление к моделям физической сетки
В данной статье будут описаны нюансы настройки физики для всяческого clutter'а - оружия, доспехов, предметов, которые можно таскать и брать в инвентарь. Основная работа будет идти в 3ds Max, но придется задействовать дополнительный инструментарий. Предполагается, что вы уже владеете 3ds Max на достаточном уровне, и объяснять, как, например, "добавить модификатор" не нужно.

Что нам понадобится: 3ds Max и\или Blender, пакет утилит от команды NifTools.
Триальную версию 3ds Max  на месяц можно скачать на сайте Autodesk: http://www.autodesk.com/3dsmax-trial.
Blender - бесплатный пакет трехмерного моделирования, скачать его можно с официального сайта.

Самую свежую версию плагина к 3ds Max от NifTools и скриптов для Blender можно найти тут.
Отсюда же скачайте NifSkope. Он понадобится для шлифовки результата.

Для Blender потребуются также установленные PyFFI и Python 2.5.x (версия 3.x не годится, т.к. несовместима, версия 2.6 требует внесения правок в реестр, чтобы обмануть Blender и заставить его считать, что у вас 2.5)


Итак, будем считать, что модель у вас уже готова (сами сделали, позаимствовали и т.п.).
Теперь нам надо создать упрощенный вариант (чтобы физический движок не сходил с ума) для Collision Mesh. В идеале - вручную удалить лишние вершины (слить их с ключевыми), но можно применить и автоматические методы, например модификаторы Optimize и MultiRes в 3ds Max. Подробности тут не нужны, достаточно оставить основные элементы модели. Кстати, мне приходилось инвертировать нормали этому объекту, иначе в старых версиях плага Max просто падал, а в новых экспорт шел "не по циркулю". Но сейчас эта проблема уже неактуальна (по крайней мере, я с ней не сталкивался уже очень давно).
Выглядеть эта модель может примерно так (я разнес их в пространстве для наглядности, но вообще-то они должны накладываться друг на друга!):


Как видите, обрезано 90% полигонов и вершин. И по хорошему, надо было бы еще чуток упростить...

Теперь добавляем созданному объекту модификатор bhkRigidBodyModifier. В настройках модификатора нужно выставить ему материал и задать режим Convex Shape. Strips Shape или его разновидности, конечно, куда точнее... но он зверски грузит процессор и для движущихся объектов мало пригоден - глюки-с. Так что только для статичных объектов. А Convex Shape соединяет все "внешние" точки болванки прямыми - так что для объектов сложных, с большими зазорами, не годится - скажем, топор с топорищем будет выглядеть для физического движка треугольником, а не "коробкой с палкой". Для таких объектов надо применять несколько раздельных моделей столкновений, каждая из которых закрывает свой участок. Но это тема для отдельной статьи...


Следующий шаг. Создаем объект bhkRigidBody (Helpers -> NifTools), добавляем в его список свой Collision Mesh.

Выставляем материал (да, ОПЯТЬ). Задаем Layer (в нашем случае Weapon, Shield, Clutter, Quiver и т.п. - в зависимости от типа объекта; для доспехов это, скажем, Clutter), массу и два ключевых параметра - Motion System и Quality Type. Для всякого clutter'а выставляем 4: Box и 3: Debris соответственно.


Подробная справка о значениях этих параметров есть в NifSkope:


Все остальные параметры оставляем как есть.

Все! Можно экспортировать. не забудьте включить Game = Oblivion и Export Collision.

После экспорта...
Вариант номер раз.
Как минимум прописать (в NifScope) все параметры вручную. Пример с моей кирасой (все рабочее):



Убедитесь, что Motion System = MO_SYS_BOX, Quality Type = MO_QUAL_DEBRIS, Collision Response = RESPONSE_SIMPLE_CONTACT, Layer и масса заданы верно.
Особенно учесть блок Inertia!!! Там по умолчанию все нули, поэтому объект висит в воздухе. Вписать значения в строки m11, m22, m33. Какие - а бес его знает. Я опытным путем подбирал. От этого зависит поведение объекта при движении, поэтому мой первый вариант кирасы все время заваливался на пузо - перевешивало; а поднять ее можно было только когда она лежала на спине - инерция как-то странно сработала...
Также проверьте местоположение центра масс объекта (Center, отображается маленькой копией осей координат). Если он выставлен неправильно - модель будет себя вести неправильно - например, деревянная рукоять топора будет перевешивать тяжелое стальное лезвие.

Вариант номер два. Предпочтительный. Он же "танцы с бубном".
Импортируем модель в Blender (File -> Import -> NetImmerse\Gamebryo). Экспортируем обратно (в новый файл), указав в окне настроек экспорта нужную массу и тип предмета. Все, остается скопировать из получившегося файла в первый параметры Inertia (или можете работать со вторым файлом - это решительно все равно; но первый-то уже настроен, а второй еще ошкуривать в NifSkope).


Готово. Осталось только довести до ума основную часть модели: правильно указать пути к текстурам, задать BSXFlags и NiStringExtraData - их можно взять у другой такой же модели - и т.п. Но это находится за рамками данной статьи.
Категория: Мои статьи | Добавил: EuGENIUS (09.03.2009)
Просмотров: 33762 | Комментарии: 6 | Рейтинг: 5.0/2 |
Всего комментариев: 6
6 dmitriy1991d  
0
Услуги хакера на заказ! Взлом почты / Взлом Вконтакте / Одноклассников 

Хотите узнать с кем общается Ваша половинка в интернете? 
Желаете всегда быть в курсе дел Ваших конкурентов? 
Нужно узнать секреты или поймать на лжи? 
Взломать страницу мужа / Взломать страницу жены 

Тогда наш сервис для Вас! 

Так же осуществляем взлом соц. сетей: 
odnoklassniki 
vkontakte 
mamba 
facebook / фейсбук 
и т.д. 

- Разумные цены 
- Кратчайшие сроки выполнения (не более дня) 
- Соблюдается анонимность и конфиденциальность 
- Пароль остается неизменным и хозяин почты 
не заподозрит, что его почта просматривается 
- Индивидуальный подход к каждому клиенту 
- Работаем практически круглосуточно и БЕЗ выходных 
- 50% скидки постоянным клиентам 

РАСПЕЧАТКА СМС СООБЩЕНИЙ И ЗВОНКОВ 
Удаление кредитной истории! 
DDOS на сайты конкурентов 

Также вернем Ваш ящик, если его взломали и поменяли пароль 

БЫСТРО! КАЧЕСТВЕННО! ПРОФЕССИОНАЛЬНО! 
Наш сервис - действительно лучший. 

Не теряйте времени, пишите прямо сейчас. 

email: ipvzlom@gmail.com 

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Услуги хакера на заказ! Взлом почты / Взлом Вконтакте / Одноклассников 

Хотите узнать с кем общается Ваша половинка в интернете? 
Желаете всегда быть в курсе дел Ваших конкурентов? 
Нужно узнать секреты или поймать на лжи? 
Взломать страницу мужа / Взломать страницу жены 

Тогда наш сервис для Вас! 

Так же осуществляем взлом соц. сетей: 
odnoklassniki 
vkontakte 
mamba 
facebook / фейсбук 
и т.д. 

- Разумные цены 
- Кратчайшие сроки выполнения (не более дня) 
- Соблюдается анонимность и конфиденциальность 
- Пароль остается неизменным и хозяин почты 
не заподозрит, что его почта просматривается 
- Индивидуальный подход к каждому клиенту 
- Работаем практически круглосуточно и БЕЗ выходных 
- 50% скидки постоянным клиентам 

РАСПЕЧАТКА СМС СООБЩЕНИЙ И ЗВОНКОВ 
Удаление кредитной истории! 
DDOS на сайты конкурентов 

Также вернем Ваш ящик, если его взломали и поменяли пароль 

БЫСТРО! КАЧЕСТВЕННО! ПРОФЕССИОНАЛЬНО! 
Наш сервис - действительно лучший. 

Не теряйте времени, пишите прямо сейчас. 

email: ipvzlom@gmail.com 
.
.
.
.
.
.
.
.
.
.
.
.
Услуги хакера на заказ! Взлом почты / Взлом Вконтакте / Одноклассников 

Хотите узнать с кем общается Ваша половинка в интернете? 
Желаете всегда быть в курсе дел Ваших конкурентов? 
Нужно узнать секреты или поймать на лжи? 
Взломать страницу мужа / Взломать страницу жены 

Тогда наш сервис для Вас! 

Так же осуществляем взлом соц. сетей: 
odnoklassniki 
vkontakte 
mamba 
facebook / фейсбук 
и т.д. 

- Разумные цены 
- Кратчайшие сроки выполнения (не более дня) 
- Соблюдается анонимность и конфиденциальность 
- Пароль остается неизменным и хозяин почты 
не заподозрит, что его почта просматривается 
- Индивидуальный подход к каждому клиенту 
- Работаем практически круглосуточно и БЕЗ выходных 
- 50% скидки постоянным клиентам 

РАСПЕЧАТКА СМС СООБЩЕНИЙ И ЗВОНКОВ 
Удаление кредитной истории! 
DDOS на сайты конкурентов 

Также вернем Ваш ящик, если его взломали и поменяли пароль 

БЫСТРО! КАЧЕСТВЕННО! ПРОФЕССИОНАЛЬНО! 
Наш сервис - действительно лучший. 

Не теряйте времени, пишите прямо сейчас. 

email: ipvzlom@gmail.com 

cool

5 incitreni  
0
Надо запомнить :)

4 Unsencekisy  
0
Этот пост — одно из редких исключений, когда читаешь с интересом и что-то для себя выносишь. Спасибо автору. Добавлю в избранноеhttp://voronezh.recikl.ru/ - . :)

3 Liska  
0
Развивайте темы дальше.

2 vipgod  
0
Отличчная статья, мне нраивтсся,, достойно.

1 annousepeag  
0
спасибо за интересный блог

Имя *:
Email *:
Код *:
Форма входа
Поиск
А теперь реклама! ;)