Войти
RoboGame blog [RIP]Форум

Подводные камни физикса (комментарии)

#0
18:12, 23 апр. 2009

Подводные камни физикса (комментарии)

Это сообщение сгенерировано автоматически.


#1
18:12, 23 апр. 2009

>>А теперь несколько риторических вопросов: ...

1) ФизИкс не курил. Не в курсе как там. Для bullet известная тема, и, кажись, они обходятся без варнингов в доках (я на них не наступал). Ты скажи, когда двигаешь статическую физику, с ней всё нормально коллизится? В bullet оптимизация на уровне Broadphase. Например, в их реализации sweep and prune, если статика двигается, никто кроме тебя об этом не знает. До корней не копал, но моё видение темы именно такое.
2) И никто тебя в этом не ограничивает. Типа сам понимай чо творишь. Да и, полагаю, есть возможность полного пересчета ааббтрии.
3) Так ты всё правильно сделал. Навесил на статику кинематический флак. В bullet, кажись (чисто предположение), ещё можно использовать топорную вротфазу (Broadphase) для таких извращений, но оно точно будет работать чутка медленней ;).

Наверное, примерно так.

#2
18:38, 23 апр. 2009

vonrims
>>>А теперь несколько риторических вопросов: ...
>1) ФизИкс не курил. Не в курсе как там. Для bullet известная тема, и, кажись,
>они обходятся без варнингов в доках (я на них не наступал). Ты скажи, когда
>двигаешь статическую физику, с ней всё нормально коллизится?

Да, вроде коллизии отсутсвуют. Если бы только в этом было дело я бы махнул на это рукой )

>2) И никто тебя в этом не ограничивает. Типа сам понимай чо творишь.

Защита должна быть, если из-за этого появляются глюки. Это нормальный стиль программирования готовых библиотек. Функция должна возвращать NULL и ничего не двигать.

>Да и,
>полагаю, есть возможность полного пересчета ааббтрии.

Я не нашёл, хотя очень упорно искал.

>3) Так ты всё правильно сделал. Навесил на статику кинематический флак.

На статику нельзя навесить кинематик флаг. Можно только на динамику. И кстати тут ещё одна проблема может нарисоваться - Тримеш ведь только для статики можно создавать.... сейчас то я его не юзаю, но в будущем планирую ))

#3
0:12, 24 апр. 2009

XIRMAC
>Защита должна быть, если из-за этого появляются глюки. Это нормальный стиль
>программирования готовых библиотек. Функция должна возвращать NULL и ничего не
>двигать.

Это защита от дурака... дураки физические движки не пользуют ;).
На самом деле, тебе об этом надо с живыми разработчиками потолковать... в тёмном переулке. Думаю и в bullet, и в PhysX одинаковая логика по данной теме не с проста.
Форумы попробуй... сомневаюсь, что ты первый.
Я про эту тему прочитал в документации к bullet, где разбирается пример "Hello World". Принял как аксиому и не заморачиваюсь.

>Я не нашёл, хотя очень упорно искал.

По PhysX не смогу подсказать :(..... Гм. В bullet тоже на вскидку не нашел. Наверное где-то прячут :).

>На статику нельзя навесить кинематик флаг. Можно только на динамику. И кстати
>тут ещё одна проблема может нарисоваться - Тримеш ведь только для статики можно
>создавать.... сейчас то я его не юзаю, но в будущем планирую ))

В bullet статикой считаются объекты с нулевой/бесконечной массой. Кинематика - то, чему ты навесил соответствующий флаг, т.е. масса не влияет. Динамика - всё остальное.

#4
12:08, 24 апр. 2009

я вообще в редакторе не использую физиксовские Акторы до симуляции, все что редактируется это только их графическое представление. Соответственно таких проблем нет.

#5
12:14, 24 апр. 2009

__ersh__
>я вообще в редакторе не использую физиксовские Акторы до симуляции, все что
>редактируется это только их графическое представление. Соответственно таких
>проблем нет.

У меня движок построен таким образом, что все данные о положении\поворотах\соединенниях между объектами хранит в себе физикс. Соответсвенно даже в редакторе идёт симуляция физики, только коллизии и гравитация отключены.

RoboGame blog [RIP]Форум

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