Render.ru

Кто знает как подскажите плз...

Seminarist

Активный участник
Рейтинг
5
#1
Задача - сделать физическую модель цепи состоящую из нескольких звеньев (сочленений). Так, чтоб за одну взял, другие - повисли и болтались.
Вариант первый отпадает сразу - с помощью обычной физики и коллизий ждать реалистичного просчета надо будет до "второго пришествия".
Вариант второй - с помощью скелета. Во-первых быстро, во-вторых возникает возможность анимировать физику, допустим, не цеппей или сочленений (т.е. составных систем), а однородных тел, скажем длинный кнут, или шланг резиновый (про упругость, кстати, отдельный вопрос...)
Сколько ни торкал - ничего не получается.
Подскажите плз решение (если оно есть)

Спасибо.
 

ODA

Активный участник
Рейтинг
11
#2
Для решения этой задачи лучше всего использовать Chrono http://www.deltaknowledge.com/chrono/animations.php. Это дополнительный модуль для решения всех задач, связанных с моделирование физически правильной симмуляции. Работает оЧень быстро, так как использует собственные методы просчета физики и коллизий.

Второй вариант так же возможен. Для этого надо использовать Constraint
 

__yra

Активный участник
Рейтинг
10
#3
А я помнится Dynatomic для этой цели использовал, очень не плохо получалось, а главное можно было сделать прикольную резиновую цепь.
 

ODA

Активный участник
Рейтинг
11
#4
Да Dynatomic тоже отлично делает подобные вещи, но поскольку пока нет официального релиза этого модуля я не стал упоминать о нем:)
 

Seminarist

Активный участник
Рейтинг
5
#5
Constraint - это со скриптами, это неудобно (я их не знаю). Жаль, что штатными средствами нельзя :(
Жаль, что Chrono платный :(, а про Dynatomic я тоже думал, только сомнение есть - будут ли объекты, находящиеся в системе Dynatomic полноценно взаимодействовать с объектами root. Пока не проверял, но очччень не уверен. Методом научного тыка много не натыкаешь, а по готовым сценам не всегда и не совсем разберёшься - хэлпов-то нормальных нет. Это, ксати, и самого R6 касается. Давеча пробовал штуку как на картинке сделать - шишь! Пол ночи просидел - ничего похожего! Скажите, кто делал, в чём секрет-то?
(то, что два предпоследних значения не совпадают - так подругому не поставить - они как при галке "Safe proportion" изменяются, я думаю дело не в этом)
Спасибо.
 

Вложения

ODA

Активный участник
Рейтинг
11
#6
Constraint не так сташен, как кажется:)

Да Chrono платный. Но во первых есть полностью функциональная демо версия. Втрое - цена в 150 Euro делает этот модуль доступным практически любому.

Dynatomic, как и Chrono, полностью интегрируется с RealSoft-ом. Объекты Dynatomic автоматически генерируются их базовых объектов RealSoft-а, так что никаких дополнительных затрат времени на моделирование не требуется. Просто, нужные объекты назначаем системе взаимодействия Dynatomic.

По картинкам. Не очень понятна конечная цель экспериментов. Пожалуйста, объясни что в результате нужно получить. Тогда можно будет подсказать с решением.
 

Seminarist

Активный участник
Рейтинг
5
#7
Constraint не страшен, когда язык знаешь, а я этот китайский в глаза не слышал :)

Дема Chrono то есть, да толку-то с неё без хэлпа. Чтоб почитать ещё два раза по 30$ выложи. Я, конечно, понимаю, что это не деньги за такое счастье, но жаба своё дело делает :)
По поводу Dynatomic я не про затраты, я про взаимодействия. Уже проверил - когда создаёшь обекты Dynatomic (не геометрию, а softbody, rigitbody, cloth и т.д.) физика для них не рилсофтовская, а физика Dynamic sistem, и на gravity из вкладки simulation или collision detection из object propery, как, собственно, и на все другие оъекты вне Dynamic sistem им глубоко наплевать. Засунуть всю сцену в Dynamic sistem не проблема, но получается две независимые физики в одной сцене :) Ньютон в гробу перевернётся :) Надеюсь, что с официальным выходом Dynatomic его таки встроят в интерфейс Realsofta.

Про ротатор: Это не эксперимент, это, если хотите, выполнение тутора. Я читаю референс, вижу картинку, вижу иерархию объектов, вижу свойства. Повторяю всё один в один, рассчитывая получить такой же результат (такую же картинку) и... То что должно получится по словам разработчиков изображено на первой картинке, а то что получилось у меня - на второй. Заметьте, что информация на картинках, за исключением рендера, одинаковая (иерархия, свойства). Внимание, вопрос - как такое может быть? Или - что я не так сделал?
Спасибо.
 

ODA

Активный участник
Рейтинг
11
#8
ДА цена на Chrono просто несерьезная:) По тому что делает, цена должна быть как минимум на порядок выше. На счет хелпа, что то не очень понятно - у меня он комплекте.

По Dynatomic. Тут так и задумао. Не вижу ничего противоестественного. Все объекты , требующие просчета динамики помещаются в систему Dynamic system. Она намного более продвинута и по скорости и по интерфейсу и по возможностям управления чем родная RS-кая. Dynamic system полностью встроена в иерархию сцены RS. Другими словами, все что требует просчета динамики надо перенести в нее.

Про ротатор.Все очень просто. Делаем аналитик сферу и рестангл. Создаем ротатор. Вот и все. Результат на прикрепленной картинке
 

Вложения

ODA

Активный участник
Рейтинг
11
#9
В дополнение по ротатору. Важно расположение объектов относительно друг друга. В моем примере рестангл определяет систему координат по VU для ротатора. Поэтому, чтобы избегать неопределенности, лучше располагать объект в начале координат (в нашем случаи левый верхний угол прямоугольника)
 

Seminarist

Активный участник
Рейтинг
5
#10
Хэлп в комплекте потому, что Chrono лицензионный :) По DynAtomic я хэлпа вообще никакого не нашёл, одни готовые сцены в комплекте прилагаются.

Расположение в начале системы координат помогло. Спасибо, прямоугольник из шаров есть, но вопрос про слайдеры остаётся открытым. Дело в том, что я не могу выставить такие параметры как на Вашей картинке, потому, что параметры Angle и Total Angle, так же как и Translation и Total Translation, изменяются одновременно. Т.е. дергаешь за Angle - Total Angle сам ползёт, тоже самое с translation. Максимум чего можно добиться - той или иной степени разреженности или сжатости массива (параметры translation и total translation), или вращение шаров вокруг своих осей на различные углы (параметры angle и total angle), шары так и остаются в одной плоскости. Ни о каких волнах в пространстве и речи нет. Вот так :(
 

ODA

Активный участник
Рейтинг
11
#11
DynAtomic пока в стадии разработки, но все же небольшой хелп есть в комплекте


По ротатору. Смести чуть чуть сферу в направлении перпердикулярном плоскости рестангла - сразу появиться эффект "волны".
 

Seminarist

Активный участник
Рейтинг
5
#12
Ха! Получилось, только не так. Шары разлетелись так далеко, что их вообче не видно в кадре! Ведь все параметры одинаковые - что не так?
Спасибо.
 

Вложения

ODA

Активный участник
Рейтинг
11
#13
рад что получилось.
Но одно важное замечание. Не надо пытаться "подогнать" результат по настройки. Нужно понять принцип работы инструмента (он очень прост) и использовать его для решения своих задач. После этого можно попробовать комбинировать ротатор с другими инструментами RS-та. Например, интересный результат применения ротатора конструкции построения NURBS поверхности по Crossection Tools
 

Seminarist

Активный участник
Рейтинг
5
#14
"Не надо пытаться "подогнать" результат по настройки. Нужно понять принцип работы инструмента (он очень прост) и использовать его для решения своих задач."

Это что ж тогда получается? Что настройки не важны, что тогда важно? У меня есть некий инструмент, допустим, калькулятор, принцип действия действительно прост - нажимаешь последовательность кнопок - получаешь результат. Есть задача: получить на экране цифру "5", решение задачи: нажать последовательно кнопки "3", "+", "2", "=". Я, следуя инструкции, последовательно нажимаю указанные кнопки и получаю на экране "8", а не "5". Получается как в анекдоте, фигня какая-то: "Вот и я говорю фигня, а производители калькулятора говорят "ножницы":) Как я могу использовать инструмент для решения своих задач, если, в данном случае, результат для меня совершенно непредсказуем? Как один и тот же инструмент при прочих равных условиях может выдавать разный результат?

Да и в моём случае - это не попытка подогнать результат по настройкам, а проверить инструмент в действии. Проверил - не получилось. Логично предположить, что при одинаковых настройках результат должен быть одинаковым, это ж инструмент, как никак, а не рулетка из казино - как выпадет, так и есть. А у RS для достижения результата при использовании инструментов есть много "подводных камней", которые никому неведомы, кроме Аллаха, потому как нигде ничего про них не написано (как, например, в случае с ротатором - начало координат и сдвиг сферы).

Так я и хочу, на данном примере при неудачной попытке выполнить решение примера, разобраться и выявить эти "подводные камни", для исключения ошибок в будущем. Да и потом, это не единичный случай, я с этим не первый раз сталкиваюсь, как же мне в программе то работать, если у меня половина "не работает"?

Спасибо.

P.S.
Жаль кстати, что после создание NURBS-поверхности с помощью Crossection Tools (по кривым, созданным ротатором) ротатор уже не работает с кривыми. ВО, ВСЯКОМ СЛУЧАЕ, У МЕНЯ :):):)
 

ODA

Активный участник
Рейтинг
11
#15
Понятно:)
Я с большим уважением отношусь к упорству и трудолюбию. Но тут неверен сам подход к изучению RealSoft-та. Поверь, но через мои руки прошли десятки специалистов, так что типовые ошибки видны невооруженным глазом.

Ошибка первая и самая важная. RealSoft ЭТО НЕ НАБОР КНОПОК. Если нужно работать по кнопкам то для этого есть намного более простые программы, например, тот же 3DMAX.

Ошибка вторая. Пользователи стараются изучить работу инструмента методом тыка. Тратя многие часы на эксперименты, вместо того чтобы потратить максимум 15 -20 минут на изучение принципа работы инструмента. В RealSoft важно понять принцип, все остальное вытекает из него как само собой разумеющиеся.

Про калькулятор:) Хорошее сравнение. Но важно учитывать ВСЕ значения, которые формирую результат. Realsoft основан на параметрическом моделировании. Поэтому, некоторые значения при работе того или иного инструмента берутся из параметром самих объектов.

По ротатору.
Принцип работы. Создает структуру дочерних объектов (Копия или истансы) путем вращения родительского объекта вокруг осей UV объекта заданного в качестве оси. Родительским объектом может быть как единичный геометрический объект так и любая иерархический объект RS (со своей анимацией). В качесвте оси можно использовать любой объект RS, имеющий UV координты. В простейшем случаи ось задаем отрезком NURBS кривой. (естесвенно что в этом случаи мы сможем задавать структуру только в U направлении).

Регулируемые значения
Copy Metod - задает тип дочерних объектов. Создает Instance либо Dublicate

Angle - угол на который происходит разворот дочернего объекта относительно соседнего
Total Angle - угол на который разворачивается конечный дочерний объект в структуре
Translation - смещение (или с каким шагом) дочерние объекта смещаются относительно родительского объекта по направлению оси. Важно помнить, что это значение задается в процентах от длины оси в U направлении. Например, значение в 50 - означает что растояние между дочерними объектами соствят половину длины оси U.
Total Translation - полное смещение конечного дочернего объекта относительно родительского
Count - количество дочерних объектов в структуре.

Важно заметить, что все эти параметры зависят друг от друга, а результат работы инструмента еще и зависит от геометрических размеров объекта-оси и расположение его относительно родительского объекта.

Теперь, возвращаясь к примеру с калькулятором, надеюсь понятно что с ним (калькулятором) все в порядке:) Другое дело что для получения нужного результата надо учитывать все то что я написал чуть выше.

Надеюсь, после столь подробного пояснения ротатор у тебя заработает предсказуемо и в полную силу.
 

Seminarist

Активный участник
Рейтинг
5
#17
Будучи реалистом, я все же считаю, что любая программа - это набор кнопок (читай:фунций) (как ни крути, по-другому не получается :) Только для достижения одного и того же результата в 3DMax нужно нажать 33 кнопки, а в RS всего 2, но определённым образом. Max не может комбинировать равновеликие функции, а RS может. Поэтому функциональная структура (если так можно выразится) RS имеет матричный вид, а не линейный (иерархический) как 3DMax (не путать с анимацией - линейной или нелинейной), что ставит RS, по законам системного анализа, на ступень выше. Поэтому так сложно и даётся. Поэтому и хэлпа "человеческого" нет. Попробуй опиши примерно n! возможных вариантов сочетания использования функций, где n - общее количество функций. А функция кнопки всегда остается неизменной - ротатор крутит, мувик двигает, вентилятор дует.
С главенствующей ролью философии RS и принципов его работы я тоже полностью согласен, понял, разбираясь как раз методом "тыка" - с "кондачка" так просто голыми руками не возьмешь :)
Я, собственно, о чём - чисто технические моменты. На примере того же ротатора, не даёт он мне покоя :) Давайте уж до конца добъём :)
Принцип понятен. Не понятно следующее: во-первых - правила построения соблюдены, углы и смещения выставлены, тогда от каких параметров самих объектов может зависеть результат (картинка), если сфера и ректангл аналитические, а углы и смещения - величины относительные, т.е. результат не может зависеть от геометрических размеров исходных объектов, во-вторых - зачем создавать Angle и Total Angle (также как и Translation и Total Translation), если одно является прямым следствием из другого, и отдельно их редактировать нельзя. В случае распределения объектов по 3d-объекту, например, сфера, углы и смещения работают также. Или есть таки случаи, когда они работают раздельно? И последнее: "Act as a target for other constructor" - смысл понятен, но в каких случаях эта галка работает?

Спасибо.
 

ODA

Активный участник
Рейтинг
11
#18
По поводу первого абзаца комментировать не буду. Любое мнение имеет место.

По ротатору. Еще раз повторю какие параметры задействованы в этом инструменте:
1. Расстояние от родительского объекта до центра вращение. задается взаимным расположением родительского объекта и объекта-оси
2. Геометрические размеры объекта-оси по UV направлениям. Длина объекта-оси принимается как 100% значения параметра Translation для каждого направления. По этому размер рестангла в нашем примере имеет определяющее значение при задании величины смещения.
3. Ориентация родительского и объекта-оси относительно друг друга.

Зачем создавать Angle и Total Angle (также как и Translation и Total Translation), если одно является прямым следствием из другого. В первую очередь для удобства контроля, создаваемой структуры. Т.е мы имеем возможность контролировать результат как на уровне единичных объектов так и на уровне структуры целиком. Выбор остается за пользователем и зависит от того какую задачу он решает в данный момент.

"Act as a target for other constructor" ее следует включать, когда ротатор встроен как элемент другого конструкции.
 
Сверху