forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Библиотеки (http://forum.boolean.name/forumdisplay.php?f=28)
-   -   Bullet Physics wrapper (http://forum.boolean.name/showthread.php?t=14511)

Coks 02.04.2011 04:36

Bullet Physics wrapper
 
Blitz Bullet Wrapper

что реализовано:
- выпуклые, вогнутые, мягкие, твердые тела
- рендер физики
- определение столкновений
- райкастинг
- транспорт
- магнит
- сочленения.
- группы столкновений и маски
- силы

В архиве 8 примерчиков. Справка неполная, писалась быстро поэтому в ней могут быть неточности. Желатьено потестить у кого есть возможность. :)

Отдельное спасибо ARENSHI за медию.

p.s. триал версия - ограничение в 7 минут.

Venom2 02.04.2011 06:28

Ответ: Bullet Physics wrapper
 
Цитата:

Сообщение от Coks (Сообщение 184534)
Качать отсюда: http://mirage-lab.com/files/BlitzBullet.rar

что реализовано:
- выпуклые, вогнутые, мягкие, твердые тела
- рендер физики
- определение столкновений
- райкастинг
- транспорт
- магнит
- сочленения.
- группы столкновений и маски
- силы

В архиве 8 примерчиков, сравнительные бенчмарки на булет, ньютон и физикс. Так же имеется справка (неполная), писалась быстро поэтому в ней могут быть неточности. Желатьено потестить у кого есть возможность. :)

Сразу пару замечаний:
- стоит прилинковать msvcr90.dll статически
- внутри всяких bt...X\Y\Z функция большая часть кода одинакова, а значит получаем трехкратный оверхед, стоит как-то оптимизировать
- тонкие обертки на блице тоже оверхед (блиц даже на пустую, без параметров функцию генерит кучу ненужного кода типа сохранения регистров и т.п.) И не надо говорить про "экономию на спичках" :) параметры по-умолчанию помоему не стоят этого :)

Примеры работают, вроде довольно быстро, кроме 7_SoftBodyCar.bb - фпс падает сразу до 1-2.
По бенчмаркам, physx нету, есть только враппер newton 0.9.5 (может стоит отдельно приложить оба враппера?). Буллет гораздо быстрее справляется, фпс в пределах 40-50, в том время как с ньютоном проседает до 17-20 уже в начале.

P4-HT-3000mhz, GF8600GTS-256mb, WinXP-HE-SP3

Антихрист 02.04.2011 09:03

Ответ: Bullet Physics wrapper
 
Странно)Mozilla блочит сайт:Имеется информация, что эта веб-страница атакует компьютеры!

Randomize 02.04.2011 13:14

Ответ: Bullet Physics wrapper
 
Цитата:

404: файл не существует
Ну вот...

Coks 02.04.2011 14:36

Ответ: Bullet Physics wrapper
 
Обновил первый пост. Ссыль работает!

Цитата:

Сообщение от Venom2 (Сообщение 184535)
Сразу пару замечаний:
- стоит прилинковать msvcr90.dll статически

Я собираю билд в статическом режиме. Разве эти длл не должны автоматически линковаться? Есть проблема с запуском на голой винде, но это из-за чегото другого.
Цитата:

Сообщение от Venom2 (Сообщение 184535)
- внутри всяких bt...X\Y\Z функция большая часть кода одинакова, а значит получаем трехкратный оверхед, стоит как-то оптимизировать

Таких функций 10%! Половина из них необходима. Если можешь предожить какие идеи по оптимизации, буду признателен:)
Цитата:

Сообщение от Venom2 (Сообщение 184535)
Примеры работают, вроде довольно быстро, кроме 7_SoftBodyCar.bb - фпс падает сразу до 1-2.

Добавил аналогичный оптимизированный пример (за счет уменьшения времени обновления физики).

Venom2 02.04.2011 15:25

Ответ: Bullet Physics wrapper
 
Цитата:

Сообщение от Coks (Сообщение 184552)
Я собираю билд в статическом режиме. Разве эти длл не должны автоматически линковаться? Есть проблема с запуском на голой винде, но это из-за чегото другого.

В импорте маячит библиотека рантайма, точно статически линкуешь? В настройках проекта, C/C++, Code Generation, Runtime Library стоит Multi-Threaded (/MT) ?

Цитата:

Сообщение от Coks (Сообщение 184552)
Таких функций 10%!

Зато они часто используются
Цитата:

Сообщение от Coks (Сообщение 184552)
Если можешь предожить какие идеи по оптимизации, буду признателен:)

Ну например кеширование значений, чтобы например для ...Y() и ...Z(), после вызова ...X(), уже бралось из расчитанного, т.е. с любым порядком вызова.
Хотя лучше всего сразу вектор брать, жаль в блице структур нету, а банки и типы тяжеловаты для простой передачи.

Цитата:

Сообщение от Coks (Сообщение 184552)
Добавил аналогичный оптимизированный пример (за счет уменьшения времени обновления физики).

Во, теперь 100-130 фпс

Coks 02.04.2011 18:45

Ответ: Bullet Physics wrapper
 
Еще раз перезалил враппер с исправлениями!

Цитата:

Сообщение от Venom2 (Сообщение 184556)
В импорте маячит библиотека рантайма, точно статически линкуешь? В настройках проекта, C/C++, Code Generation, Runtime Library стоит Multi-Threaded (/MT) ?

Ага вижу! Да, была в этом загвоздка. Динамически собирал сам буллет оказывается... Сейчас все поправил и перезалил.

Цитата:

Сообщение от Venom2 (Сообщение 184556)
Ну например кеширование значений, чтобы например для ...Y() и ...Z(), после вызова ...X(), уже бралось из расчитанного, т.е. с любым порядком вызова. Хотя лучше всего сразу вектор брать, жаль в блице структур нету, а банки и типы тяжеловаты для простой передачи.

В большинстве таких функций просто возвращается компонент вектора и никаких расчетов не производится.

Цитата:

Сообщение от Антихрист (Сообщение 184537)
Странно)Mozilla блочит сайт:Имеется информация, что эта веб-страница атакует компьютеры!

Снесли основной сайт - теперь не ругается (там были глючные скрипты).

Randomize 02.04.2011 20:04

Ответ: Bullet Physics wrapper
 
Уоу! Низкий поклон!
Вижу проделанную работу!
Бенчмарк! Класс! Debug режим просто супер! Даже документация!
Хоть продавай теперь.

ARA 02.04.2011 20:08

Ответ: Bullet Physics wrapper
 
Цитата:

Снесли основной сайт - теперь не ругается (там были глючные скрипты).
Всё ещё ругается. Сайт в чёрном списке у Мозиллы. О_о. Реквестировал амнистию. Посмотрим чо будет.

LLI.T.A.L.K.E.R. 02.04.2011 20:43

Ответ: Bullet Physics wrapper
 
При заходе на сервер качаются файлы Benchmark.rar
Хотя на мозилле стоит антискрипт.
И антивирусы NOD32 и Norton.

Файлы докачались (остановить не мог) - теперь сканирую нэтбук.

Nex 02.04.2011 20:52

Ответ: Bullet Physics wrapper
 
Цитата:

- рендер физики
:punk: :doof:

MadMedic 03.04.2011 07:20

Re: Bullet Physics wrapper
 
Наконец то затестил! Я раньше думал что ничего физикса быстрее быть не может, я был не прав! Респект!
А лицензия свободная?
Как дела с водой?

RegIon 03.04.2011 07:47

Ответ: Bullet Physics wrapper
 
Во....качаю,раньше тож не мог.
Быстренько, по сравнению с ньютоном и физиксом (у мя аш на бенче 20фпс,а ньютон с физиксом 11,хотя оде наверняка быстрей)

Venom2 03.04.2011 12:57

Ответ: Bullet Physics wrapper
 
Цитата:

Сообщение от Coks (Сообщение 184534)
p.s. триал версия - ограничение в 7 минут.

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

Ganociy 03.04.2011 14:04

Ответ: Bullet Physics wrapper
 
Physx самый производительный.


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

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