Внимание все скрины увеличиваются (на скрине правой кнопкой открыть)
Надеюсь, кому нибудь пригодится.
Создаем (например в 3D Max 9) объект Plane и задаем кол-во секций (например 6*24) : Конвертируем его в EditableMesh. Выбираем инструмент Bones и располагаем кости точно по ребрам (edge) , как на рисунке:
конечную маленькую косточку удалять ненужно. Выделяем получившийся ряд костей и с зажатым шифтом копируем вниз также по ребрам полигонов (edge): Выделяем наш EditableMesh (или Poly - в зависимости во что вы конвертировали, для oFusion нет разницы, он конвертирует в НЕО все в mesh - ах) и в списке модификаторов выбираем модификатор Skin, в меню нажимаем кнопку Bones: Add и выделяем все кости: С помощью OFusion конвертируем наш Mesh, не забудьте поставить галочку Export Animation. Открываем ResourceEditor и создаем материал, в качестве текстуры - любую картинку, желательно с рамочкой, тайлинг по X и Y нужно поставить соответствующий количеству полигонов по X и Y (6*24) и сделайте материал двухсторонним (Culling - False) : Применяйте материал к экспортированному мешу. Таким образом получаем наглядную картинку, где у Mesha ребра полигонов (соответственно там кости) : Создаем пустой файл Physic, пока удаляем из него тело. Создаем Type файл (например Dynamic), в поле ФизМодель выбираем созданную пустую физику. Добавляем наш mesh и в поле LinkBonesToBody выбираем True : Нажимаем на кнопку EditPhysicModel, на запрос сохранения отвечаем конечно же да, переходим к редактированию физики... Создаем физ тело,с Shape типа Box и располагаем его на ребре (предположительно там кость :crazy: ) и копируем по телу на каждое ребро вдоль края : Выделяем всю строчку и с шифтом копируем вниз также по ребрам: Выделяем пары близлежащих тел (и по вертикали, и по горизонтали) и создаем для каждой пары тип крепления Universal Joint: итоге должно получится так... да, занятие долгое и кропотливое, но оно того стоит. Выделяем верхний ряд тел и делаем их статичными(Static - True) заходим в редактор коллекции, выделяем все тела (у меня их получилось 150 :хи_хи: ) и ставим параметры StaticFriction, DynamicFriction - 0, и выставляем Density (плотность), в зависимости от того какая масса вам нужна. Результат неплохой: Примечания: Физические тела не должны быть слишком маленькими - не меньше 0,1*0,1*0,1, при меньших объемах ткань ведет себя некорректно, мягко сказать глючно.... если даже такое маленькое тело не умещается на одно ребро, не рискуйте, или увеличьте модель, или сократите количество полигонов так, чтобы размер их ребер увеличился. Вообще, чем больше тело (до разумных пределов конечно - тем плавней и реалестичней движения ткани, меня очень удивила реалистичность при использовании размеров тел начиная с 1*1*1... но у всех масштабы то разные - у кого то такая ткань наверное будет размером со всю игровую карту Поэтому на мелких тряпочках по типу "шторка" советую не заморачиваться... а вот огромный колышущийся плакат состоящий хотя бы из 500 физ тел 2*1*2 выглядит просто шикарно.
Источник: http://gameshaker.ucoz.ru/ |