20 Мая 2024, 14:09:56
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Навигация по форуму







guest3d
Quest3D - Русскоязычное сообщество > Quest3D > Физика > швыряние объектов (newton)
швыряние объектов (newton)
(Прочитано 8759 раз)
  [1]
Печать
Shef_gt | * | Новичок | Сообщений: 44 | « 29 Ноября 2010, 15:08:49 »
швыряние объектов (newton) |
0
Подскажите, как можно реализовать "швыряние объектов", например как в half life 2 - берешь левой кнопкой мыши, ходиши-бродишь с объектом, а потом праваой кнопкой кидаешь его.
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #1 29 Ноября 2010, 15:22:55 »
Re: швыряние объектов (newton) |
1
Привет!
посмотри пример в 67 посте
http://guest3d.wohlnet.ru/forum/index.php?topic=759.60
Shef_gt | * | Новичок | Сообщений: 44 | «Ответ #2 30 Ноября 2010, 10:32:17 »
Re: швыряние объектов (newton) |
2
Можно ли как- нибудь в katapulta2.rar сделать столкновение сферы с ландшафтом??? Чтобы когда она привязана к камере сквозь него не проходила.
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #3 30 Ноября 2010, 14:36:29 »
Re: швыряние объектов (newton) |
3
Да, конечно же можно!
в случае с katapulta2.rar там такая задача не стояла, пример делался по быстрому..
Shef_gt | * | Новичок | Сообщений: 44 | «Ответ #4 30 Ноября 2010, 17:36:56 »
Re: швыряние объектов (newton) |
4
Да, конечно же можно!
эт хорошо!!! А можешь в двух словах объяснить?
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #5 01 Декабря 2010, 01:12:24 »
Re: швыряние объектов (newton) |
5
Поправил пример.

по поводу вопроса:
в этом примере, я применяю грубую силу, для перемещения ньютоновского тела, после чего я делаю Reset этому телу (предворительно засетив в матрицу его текущее положение), после применяю силу для броска.. (так как я применяю "грубую силу" для перемещения тела, то естественно возможны проникновения в ленд (хоть ньютон и пытается такое тело выталкнуть обратно). Если бы мне нужно было это как то решать, то я бы сделал камеру ньютоновскую например:
- ньютоновская сфера.. к ней прилинкована обычная камера
- перемещение осуществляется, путем применения силы на сферу, в нужном направлении (тоесть уже не грубо)
- дальше по той же схеме, но.. объект для браска линкуем к ньютоновской сфере с помощью какого нибудь ньютоновского джоинта.
- во время браска, разрушаем соединение джоинт, затем применяем силу в нужном направлении, что бы закинуть объект подальше.  Улыбающийся
* katapulta3.rar (251.61 Кб - загружено 657 раз.)
« Последнее редактирование: 01 Декабря 2010, 10:50:54 от Ruslan »
Shef_gt | * | Новичок | Сообщений: 44 | «Ответ #6 01 Декабря 2010, 11:13:53 »
Re: швыряние объектов (newton) |
6
Я всё понял как это реализовать. Вот только у меня не получается привязать объект с помощью джоинта; точнее, получается, но не могу заставить этот объект на джоинте всегда находиться перед камерой!
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #7 01 Декабря 2010, 17:21:46 »
Re: швыряние объектов (newton) |
7
Пробовал сделать на джоинтах, с первого раза получилось, все работало.. после перезапуска сцены, перестало работать. Долго разбираться не стал, похоже на тот случай, который ты описал (скорее всего, перед созданием джоинта, оба Ньютоновские объекта, должны находится рядом, впритык, если этого не делать, то джоинт растягивается как пружина\резина).
Сделал по другому(типа магниты), но тоже не фонтан.. может как идея, тебе подойдет (если до ума довести).

правый клик - примагнитить
левый клик - отбросить
* katapulta4.rar (251.31 Кб - загружено 648 раз.)
« Последнее редактирование: 01 Декабря 2010, 17:29:26 от Ruslan »
DimiS | **** | Старожил | Сообщений: 284 | «Ответ #8 02 Декабря 2010, 15:24:06 »
Re: швыряние объектов (newton) |
8
эти джоинты штука хитрая, и порой мистическая ))))
из моего опыта борьбы с ними у меня создалось впечатление что они применяются в момент первого своего вызова, потом их можно вообще отконнектить и они будут продолжать работать, но объекты будут связанными в том положении в котором они были в момент этого самого первого вызова
я хочу сказать что нужно уделить внимание тому в какой последовательности и что у вас прилинковано
убедитесь что у вас не возникает ситуации когда после резета физки(это в том числе при запуске проекта) ваши джоинты вызываются до первого вызова ньютон тел, или тела вызываются первыми но с неправильной матрицей, или что успевает пройти какое-то количество фреймов между первым вызовом тел и первым вызовом джоинтов, или у джоинтов какие то другие неправильные параметры при первом вызове
исходники ваши не смотрел, сори нету времени сейчас
 
  [1]
Печать
 
Quest3D - Русскоязычное сообщество > Quest3D > Физика > швыряние объектов (newton)
Перейти в: