forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Обсужение учебника по PhysX Wrapper для Blitz3D (http://forum.boolean.name/showthread.php?t=7569)

tirarex 27.05.2012 17:37

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
в твоём примере боди диржется но на секунды улетает это очень видно

St_AnGer 27.05.2012 18:28

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
да там ппц :-D прыгает постоянно, и если очень далеко было - может снести игрока :) надо что то ещё придумывать, но магниты точно нужны для гравипушки

reumep 19.02.2014 23:17

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
Я некромант. Почему-то у меня регдолл не работает как надо. Физическая модель как бы есть, но визуальная модель не отображается. ЧЯДНТ?

Черный крыс 19.02.2014 23:41

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
вполне возможно, что меш модифицируется без обновления отсекающего бокса, пробуй MeshCullBox()

ABTOMAT 19.02.2014 23:55

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
Да именно это и может быть основной причиной.

reumep 19.02.2014 23:59

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
Цитата:

MeshCullBox()
А как правильно использовать? На что? При применении на объекты для хулла mav. Пример из урока работает нормально

ABTOMAT 20.02.2014 00:29

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
Применять на заскиненный меш.
Функция эта недокументирована, так что справку у ней надо гуглить.
А суть там какова: есть CullBox у каждого Surface в Блице, по нему рассчитывается, должна ли рендериться модель или нет, чтобы не рендерить то, что не попало в камеру.
Если начать двигать кости модели, то CullBox останется на месте и может срабатывать неправильно.
MeshCullBox позволяет вручную его указать.

reumep 20.02.2014 10:49

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
Проблема решена, я как в учебнике после превращения в регдолл удалял меш. Если не удалять, все работает

reumep 23.02.2014 15:19

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
А можно ли отключить столкновения одного тела с другим, но оставить для остальных?

St_AnGer 24.02.2014 08:46

Ответ: Обсужение учебника по PhysX Wrapper для Blitz3D
 
Цитата:

Сообщение от reumep (Сообщение 275151)
А можно ли отключить столкновения одного тела с другим, но оставить для остальных?

Да, и очень просто.

pxBodySetCollisionGroup(тело, группа) - собственно, устанавливает пользовательскую группу коллизия (число).

pxBodySetCollisionGroupFlag(группа1, группа2, флаг коллизии) - устанавливает будет-ли столкновение между определёнными группами. Можно указывать одну и ту же группу как первую и вторую, тогда между всеми телами этой группы будет/неБудет столкновений.

Использовать очень просто:
Код:

pxBodySetCollisionGroupFlag(1, 1, 0);

Body1 = pxBodyCreateCube(1, 1, 1, 10)
pxBodySetCollisionGroup(Body1, 1)
Body2 = pxBodyCreateCube(2, 1, 3, 10)
pxBodySetCollisionGroup(Body2, 1)



Часовой пояс GMT +4, время: 01:50.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot