Quest3D - Русскоязычное сообщество

Quest3D => Логика => Тема начата: Alien3D от 07 Ноября 2010, 05:28:10



Название: Сесть в машину от первого лица
Отправлено: Alien3D от 07 Ноября 2010, 05:28:10
Всем привет! Я думаю такой вопрос будет волновать скоро многих или уже волнует :)

У меня есть персонаж от первого лица(ходящая камера). Мне нужно сделать вот такую вещь.

При приближении к машине, мне надо сделать что бы персонаж (камера), при нажатии кнопки и дистанции, проигрывалась анимация открывания двери и плавный переход с места где стоит камера на место водителя в машине.
P.S. Как просчитать растояние и кнопки, я знаю. Главное как сделать плавный переход? Если кто знает где есть по этому случаю уроки или объясните если есть уже в этом практика или представление об этом! Мой майл, на случай, там же агент: Alien3D@inbox.ru Спасибо!


Название: Re: Сесть в машину от первого лица
Отправлено: Ruslan от 07 Ноября 2010, 11:37:46
Цитировать
Главное как сделать плавный переход?

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

что бы плавно интерполировать одну матрицу в другую, есть команда: MatrixOperator -> Matrix Interpolate (matrix, matrix, value)
Для проигрывания анимации посадка в машину может пригодится Command -> Get Matrix From Import Object (анимируем в максе "пустышку", далее импортируем ее в квест, затем читаем матрицу, учитывая смещения кадра анимации и эту матрицу используем для камеры)
http://guest3d.wohlnet.ru/forum/index.php?topic=969.15