Render.ru

Отталкивание объектов друг от друга, Как?

(o)ne

Мастер
Рейтинг
138
#1
Привет, народ. Подскажите как можно сделать следующую тему - есть несколько объектов, как можно описать их "хаотичное" движение и отталкивание друг от друга?
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#2
Вариантов много смотря для какой задачи
но в целом это выгледит так
1. ты должен выбрать случайное направление
спомощью генератора
2 . подставить в линейное уравнение и двигатся
проверяя на каждом шаге на столкновения
3 при столкновении просто модифицируеш
линейное уравнение чтоб допустим отскакивал под углом
4 перейти на пункт 2.
 

(o)ne

Мастер
Рейтинг
138
#3
Да, Denis, это я понимаю. А ты знаешь как это написать? Всмысле хотя бы с чего начать, я в программировании вообщем понимаю, но MaxScript не знаю, только начал смотреть. Помоги, если не трудно. :)
 

(o)ne

Мастер
Рейтинг
138
#4
Готов разговаривать на тему обучения "не просто так". :) Если что - моя аська 121231.
 

(o)ne

Мастер
Рейтинг
138
#5
вот, это я пытаюсь делать хаотичное движение :

mybox = box()
mybox.Wirecolor = red
animate on
(
at time 0 (mybox.pos = [0, 0, 0] )
at time 5 (in coordsys local mybox.pos = random [-30,-30,0] [30,30,1] )
at time 10 (in coordsys local mybox.pos = random [-30,-30,0] [30,30,1] )
at time 20 (in coordsys local mybox.pos = random [-30,-30,0] [30,30,1] )
at time 30 (in coordsys local mybox.pos = random [-30,-30,0] [30,30,1] )
at time 50 (in coordsys local mybox.pos = random [-30,-30,0] [30,30,1] )
)

Столько "time" - это, конечно неправильно, но как упростить (чтобы random менялся)? SEED? Чего-то я не понял как его применять.
 

LastJedi

Знаток
Рейтинг
27
#7
Почитай в хелпе к MAX-у раздел: Animation\Animation Utilities\Dynamics.
Это как раз инструмент для расчета динамики тел.
Лучше этой утилиты (бесплатно) никто не напишет.
 
Сверху