ПрограммированиеФорумФизика

Посоветуйте движок с возможностью проверок CD

Страницы: 1 2 Следующая »
#0
10:34, 6 авг 2009

CD - Collision Detection,не хочется юзать всяческие чарактер контроллеры,хочется просто иметь в движке проверки столкнавения Capsule\Sphere с миром и чтобы на выходе можно было получить normal,depth,point,nun contacts,и тело с котором произошло столкнавение. В PhysX есть такое? Если есть то как?

#1
10:59, 6 авг 2009

В Физиксе это есть, также как и есть в даже в ODE. Я бы в твоем случае не стал бы физ. двиг юзать.

#2
11:03, 6 авг 2009

Woland,нет ты не понял,мне физика нужна но не нужны чарактер контроллеры,ODE не лучший вареант так как баговый физ-двиг,смотрел по этому говорю,в PhysX не нашол ничего связаного с проверкой столкнавения Capsule\Sphere с сценой.

#3
11:09, 6 авг 2009

Novartis Games
>>в PhysX не нашол ничего связаного с проверкой столкнавения Capsule\Sphere с сценой.
Посмотри получше :) И ODE, кстати, очень даже хороший двиг, не надо про него нехорошести говорить, ты же им не пользовался толком. Конечно PhysX лучше, но они оба удовлетворяют твоим требованиям.

#4
11:12, 6 авг 2009

Alexander K,пролетание тела сквозь тело сечас в моде? :) Не может ODE расчитан на создание игр про полтргейстов то да двиг в этом направлении хорош :)

#5
11:15, 6 авг 2009

Novartis Games
Плохо смотрел. При установке PhysXSDK вместе с самим SDK ставится и документация к нему, в которой есть поиск (это страшная тайна, никому не говори)! Так вот если в этот поиск вбить фразу collision detection, то вторым пунктом в результатах поиска вываливается страничка Broad Phase Collision Detection, прочитав которую можно составить общее представление о CD в PhysX. А еще чуть ниже есть такие пункты как "Collision detection" и "Contact Reports", изучив которые ты вообще получишь полное представление о CD.

#6
11:20, 6 авг 2009

Нашол в NxScene метод

  virtual bool            checkOverlapCapsule    (const NxCapsule& worldCapsule, NxShapesType shapeType=NX_ALL_SHAPES, NxU32 activeGroups=0xffffffff, const NxGroupsMask* groupsMask=NULL)  = 0;

Но как получить на выходе нужные мне данные об столкновении?

#7
12:59, 6 авг 2009

Используй Contact Reports

#8
13:16, 6 авг 2009

bullet 8-)

#9
13:54, 6 авг 2009

насчет буллета, народ скажите существует в мире хоть какая-то спецификация на русском? (извините за "не по теме") глупо из-за такого вопроса тему поднимать)

#10
14:19, 6 авг 2009

Спецификация в смысле документация?
Я таковой не видел. Да и вряд ли оно кому-то нужно - это движок из разряда тех, которым достаточно просто иметь примеры, что бы любой нормальный кодер мог вникнуть... а примеров там достаточно...

#11
14:27, 6 авг 2009

До сего дня, вникал в ODE, теперь вот посмотрел Bullet, вроде не плох. Если все и дальше так пойдет, то можно полностью на него перейти.

#12
14:34, 6 авг 2009

>посмотрел Bullet, вроде не плох. Если все и дальше так пойдет, то можно полностью на него перейти.
Весьма рекомендую. Очень очень прост и при этом очень мощный. Кстати, автором его является, если я верно помню, один из разрабов хавока (хотя могу и ошибаться).
И его активно оптимизируют под Larrabee и CUDA, при этом открытый исходный код и возможности самостоятельного расширения тоже сложно назвать минусами ))

#13
16:39, 6 авг 2009

Woland,тоесть после того как я вызову checkOverlapCapsule если будет true то сразу обратится к ContactReport и там будет результат? А что если в этот же момент столкнутся ещё несколько тел и этот результат проподёт?

#14
17:07, 6 авг 2009

Нет. Ты наследуешься от класса NxContactReport, переопределяешь единственный метод (в который, кстати, передается много нужных параметров), создаешь экземпляр этого класса, регистрируешь его в NxScene и все. Когда наступит долгожданный коллижн, будет вызван метод твоего переопределенного класса, где ты и получишь нужные параметры.

Страницы: 1 2 Следующая »
ПрограммированиеФорумФизика

Тема в архиве.