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 самый производительный.

ARA 03.04.2011 14:16

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

Сообщение от Ganociy (Сообщение 184661)
Physx самый производительный.

В каком месте? Бенчмарк глядел? 280 фпс против 60

Mr_F_ 03.04.2011 14:21

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

Как дела с водой?
можно симулировать силами. например во враппере физыкса Рендер её так руками и писал.

Coks 04.04.2011 03:55

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

Сообщение от MadMedic (Сообщение 184640)
А лицензия свободная?

Для своих, могу предоставить бесплатно взамен адекватного проекта. А так планируется продажа буржуям.

Цитата:

Сообщение от MadMedic (Сообщение 184640)
Как дела с водой?

В булите есть хороший пример с водой с генерацией волн и т.п. но пока не удалось совместить ее с симуляцией мягких тел (надо в сорсах копаться). Может будет время прикручу. А простенькую воду, можно и силами симулировать, как сказал Mr_F_, прям в блице.

Цитата:

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

Не согласен на счет: "легко и быстро". Там несколько проверок стоит и еще некоторые ухищрения. А вообще с другой стороны смысла в защите нет...

LLI.T.A.L.K.E.R. 05.04.2011 16:50

Ответ: Bullet Physics wrapper
 
Чего не сказали что с сайта автоматически скачивается Ваш Benchmark.rar (архив физ. библиотек)?
Вирусов нет.

Итог: буллет у меня быстрее обрабатывался (хотя у всех менее 7 фпс)
Отчёт:
буллет - кубики падали 3 пикселя в 1 сек (по меркам дисплея)
невтон - 1 пиксел в 1 сек
физикс - 1 пиксел в 2 сек

ARA 05.04.2011 17:17

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

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 184600)
При заходе на сервер качаются файлы Benchmark.rar

Цитата:

Чего не сказали что с сайта автоматически скачивается Ваш Benchmark.rar (архив физ. библиотек)?
Что тебе не нравится то? не пойму. Конкретнее претензии.

Coks 05.04.2011 17:18

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

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 184961)
Чего не сказали что с сайта автоматически скачивается Ваш Benchmark.rar (архив физ. библиотек)?

Как понять?... Автоматически ничего не скачивается! Бенчмарк - это тест производительности.
Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 184961)
Вирусов нет.

Не удивлен. Сайт проверен доктор-вебом а файлы перед закачкой Нодом.
Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 184961)
Итог: буллет у меня быстрее обрабатывался (хотя у всех менее 7 фпс)
Отчёт:
буллет - кубики падали 3 пикселя в 1 сек (по меркам дисплея)
невтон - 1 пиксел в 1 сек
физикс - 1 пиксел в 2 сек

У булета там небольшую зависимость поставил от фпс, так что в данном случае это не аргумент.

Какая у тебя система?

ARA 06.04.2011 03:22

Ответ: Bullet Physics wrapper
 
Применив все свои "познания" в вебе сверстал небольшую страничку для враппера

http://tools.mirage-lab.com

Cкромненько, зато W3C validator пройден :D
Об опечатках просьба сообщать.

Mr_F_ 06.04.2011 14:25

Ответ: Bullet Physics wrapper
 
чето всё в ошибках на странце... отпостил в асю

MadMedic 14.04.2011 11:38

Re: Bullet Physics wrapper
 
А можно ли Bullet заставить испольховать всю мощь многоядерных систем?

SBJoker 14.04.2011 12:30

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

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 184961)
Чего не сказали что с сайта автоматически скачивается Ваш Benchmark.rar (архив физ. библиотек)?

Вот за это мозилла и забанила сайт!

ARA 14.04.2011 12:45

Ответ: Bullet Physics wrapper
 
Ничего там автоматически не скачивалось. Сайт давно разбанен гуглом :)

Coks 14.04.2011 14:04

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

Сообщение от MadMedic (Сообщение 185818)
А можно ли Bullet заставить испольховать всю мощь многоядерных систем?

Частично можно. Тестил встроенную многопоточную систему обнаружения коллизий - производительность неособо возросла (где-то 4-8 фпс). Вот думаю стоит ли вообще включать поддержку во враппер.

P.S. Скоро выложу обновление враппера с дополнительным функционалом и новыми примерами!

ANDREYman 28.04.2011 13:17

Ответ: Bullet Physics wrapper
 
Я вообщем только начал разбираться, но хочу заметить, что в физиксовском бенчмарке серьёзный недостаток:

вот это
Код:

        For i=1 To nbody
                pxBodySetEntity(aEntity(i),aBody(i))
        Next

надо заменить на это
Код:

        For i=1 To nbody
                PositionEntity  aEntity(i), pxBodyGetPositionX( aBody(i) ), pxBodyGetPositionY(aBody(i) ), pxBodyGetPositionZ( aBody(i) ),1
                RotateEntity  aEntity(i), pxBodyGetRotationPitch( aBody(i) ), pxBodyGetRotationYaw( aBody(i) ), pxBodyGetRotationRoll( aBody(i) ),1
        Next

И скорость вырастает в 2-3 раза.

А если ещё вместо pxRenderPhysic(30,0) поставить стандартное pxRenderPhysic(50,0), то в 3-4 раза. А если уменьшить точность и выставить pxRenderPhysic(200,0) - скорость сравнима с буллетом(уменьшение точности на результате практически не отразилось).
Но надо отметить, буллет враппер всё равно быстрее физиксовского при прочих равных, хоть и не в разы ))

И последнее замечание, у меня буллетовский пример шёл сильными рывками и визуально "тормозил", хотя фпс был высокий О_о Такое только у меня?

Ышо, при увеличении кол-ва боксов до 2750 - буллетовский пример грузился ну очень долго %)

Пока всё :)


А так респект, Coks! Надеюсь в итоге будет всё ОК.

Coks 28.04.2011 15:48

Ответ: Bullet Physics wrapper
 
:4to: Теперь хоть все встало на свои места, а то в голове не укладывалось почему буллет в 6 раз быстрее физикса.
Странно почему функция pxBodySetEntity дает такой глюк. Должно быть с точностью до наоборот! Наверно косяк враппера.

Цитата:

Сообщение от ANDREYman (Сообщение 186905)
И последнее замечание, у меня буллетовский пример шёл сильными рывками и визуально "тормозил", хотя фпс был высокий О_о Такое только у меня?

Какая система? Попробуй в бенчмарке функцию симуляции заменить на эту btSimulation(pt/850,1).

Цитата:

Сообщение от ANDREYman (Сообщение 186905)
Ышо, при увеличении кол-ва боксов до 2750 - буллетовский пример грузился ну очень долго %)

Поправил очевидную причину задержки, но все равно грузит дольше чем физикс.

У меня сейчас такой фпс в бенчмарке:
bullet:
- с многопоточностью: 184-195
- без: 175-185
physx:
- 151-157

Спасибо за тестинг ANDREYman! В обновлении поправлю!

ANDREYman 28.04.2011 16:38

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

Сообщение от Coks (Сообщение 186915)
:4to: Теперь хоть все встало на свои места, а то в голове не укладывалось почему буллет в 6 раз быстрее физикса.
Странно почему функция pxBodySetEntity дает такой глюк. Должно быть с точностью до наоборот! Наверно косяк враппера.

Думаю, я знаю почему. Если я всё правильно понял, враппер физикса даёт более низкую скорость только лишь из-за обновления позиции ентитей в самом блице - сначала делаются преобразования для углов, записываются в ентитю, а потом блиц обратно преобразует их в матрицу О_о А так время работы обновления физики практически равнозначно(что измерялось).

Цитата:

Какая система? Попробуй в бенчмарке функцию симуляции заменить на эту btSimulation(pt/850,1).
Тут у меня сейчас i5 760 2.8GHz, 4gb ram, ATI HD 5750. Но дело не в системе, я заменил на btSimulation(.015,3) и всё стало ОК. Короче не надо туда ставить динамические значения, лучше их дискретизировать.
Примеры работают гладко и хорошо.


Цитата:

У меня сейчас такой фпс в бенчмарке:
bullet:
- с многопоточностью: 184-195
- без: 175-185
physx:
- 151-157
Их сложно сравнивать на такой сцене - по мере рассыпания ящиков фпс меняется и скачет(да и сыпятся они по разному), к тому же я не уверен что добился полностью идентичных параметров. Физикс медленее из-за вышеописанной причины.

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

Черный крыс 29.04.2011 01:57

Ответ: Bullet Physics wrapper
 
[мимо_проходил]
Враппер физикса уже давно в открытых сорсах...
[/мимо_проходил]

Nex 29.04.2011 02:21

Ответ: Bullet Physics wrapper
 
Ты туда не ходи, ты сюда ходи, а то снег на башка попадет, - совсем мертвый будешь..

ANDREYman 29.04.2011 03:40

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

Сообщение от Diablo1909 (Сообщение 186973)
[мимо_проходил]
Враппер физикса уже давно в открытых сорсах...
[/мимо_проходил]

Мы в курсе ))

Nerd 29.04.2011 09:01

Ответ: Bullet Physics wrapper
 
Benchmark PhysX - 16 fps
Benchmark Newton - 20 fps
Benchmark Bullet - 56 fps
Круто!:)

Coks 09.07.2011 03:42

Ответ: Bullet Physics wrapper
 
Враппер обновился до версии 1.2.0.0!
скачать (прямая ссылка)


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


ant2on 09.07.2011 21:59

Ответ: Bullet Physics wrapper
 
Ееее! Супер, ребята! Жжоте напалмом :)

Nerd 09.07.2011 22:40

Ответ: Bullet Physics wrapper
 
Круто. Но тамешта shareварность - это не есть хорошо, например.

Gector 09.07.2011 22:54

Ответ: Bullet Physics wrapper
 
Круто.
А сколько она стоит? И кстати кто ее делает?

ARA 09.07.2011 23:06

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

Сообщение от Gector (Сообщение 194890)
Круто.
А сколько она стоит?

Речь шла вообще о ссущих копейках. Возможно, своим за даром, при наличии проекта. Coks придёт, уточнит.
Цитата:

Сообщение от Gector (Сообщение 194890)
И кстати кто ее делает?

Товарищ Андрей aka Coks делает.

Gector 09.07.2011 23:09

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

Сообщение от ARENSHI (Сообщение 194893)
Речь шла вообще о ссущих копейках. Возможно, своим за даром, при наличии проекта. Coks придёт, уточнит.

Товарищ Андрей aka Coks делает.

:4to:Кокс крут))). Я думал, что вы физикс юзайте, а этот пост новость с просторов инета). Не ожидал.

ARA 09.07.2011 23:22

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

Сообщение от Gector (Сообщение 194894)
:4to:Кокс крут))). Я думал, что вы физикс юзайте, а этот пост новость с просторов инета). Не ожидал.

На физиксе и доделываем. Этот враппер слишком поздно был запилен.:mad: Эх.

LLI.T.A.L.K.E.R. 10.07.2011 00:07

Ответ: Bullet Physics wrapper
 
У меня на WebMoney-ки есть.
Сойдёт такое?

Объект останавливается когда его скорость почти нулевая?
Или трясёт как обычно, что при этом, может по инерции скорость набрать и улететь...
Не нравится когда объект уже почти остановлен, но ещё ползёт еле-еле (бесконечно).

Насколько физика машины свободна для редактирования?
Т.е. хочется и реалестичности и аркады (не сразу в одном проекте):
1) реал - например настраивать реальные данные реальных машин.
2) аркада - при подборе бонусов увеличивать/уменьшать скорость передвижения и скорость поворота руля.
А то в других физиках либо глючит, либо не возможно.

Блин, ладно аркаду можно делать и без физики.
Увеличил в примере скорость поворота. При большой скорости передвижения - машина делает сальто через себя.

20 BodyMoveToPoint.bb это вещь! :cool:

Coks 10.07.2011 14:20

Ответ: Bullet Physics wrapper
 
Для своих, как я уже писал выше, бесплатно могу предоставить, тока чуть позже, когда ритейл версию сделаю. Хотя кто хочет поддержать валютой, не откажусь.:) Стоить будет где-то 24-29$ для начала.

Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 194901)
Объект останавливается когда его скорость почти нулевая?
Или трясёт как обычно, что при этом, может по инерции скорость набрать и улететь...

Это все настраивается по потребностям проекта. Увеличение трения и коэффициентов "засыпания" тела.

Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 194901)
Насколько физика машины свободна для редактирования?

В настройках подвески все необходимое есть. Реальные параметры скорее фейком реализовывать надо. Движение кара, например, комбинировать приложением крутящего момента колесам и добавлением силы к телу машины при этом релтаймово регулировать параметры подвески. А для аркады думаю самое то!

Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 194901)
Увеличил в примере скорость поворота. При большой скорости передвижения - машина делает сальто через себя.

Командой btWheelSetRollInFluence (int wheel, float roll), можно уменьшить влияние поворота.

Leowey 10.07.2011 15:53

Ответ: Bullet Physics wrapper
 
Я уже хочу это!

HolyDel 11.07.2011 12:15

Ответ: Bullet Physics wrapper
 
скомпиленных примеров не хватает очень

LLI.T.A.L.K.E.R. 11.07.2011 13:25

Ответ: Bullet Physics wrapper
 
> Bullet Physics EXE примеры <
Помните, когда ещё только появился Ageia PhysX, там были примеры физики (всего лишь 4-5 штук)
А здесь же вон скока и сделанные от души

LLI.T.A.L.K.E.R. 13.07.2011 01:07

Ответ: Bullet Physics wrapper
 
Проблема:

Физ. конус вертится по центру модели. Хотелось бы вертеть как у маяка свет (с вершины конуса)

btBodySetTranslation нет в dll

~~~
Я же пока нарисую упрощённый конус в максе (пирамида), потом физ. модель сконверчу.

###
Global bodyTrigger=btBodyCreateCone(20,128,0.5)

Global entTrigger=CreateCone()
ScaleEntity entTrigger,20,64,20

Как видно, чтобы физ. модель совпадала с блитз - нужно корректировать (хм. возможно деление на 2?)

____

Когда убираю EntityAlpha - модель (конус) мерцает (закреплённый к физ. телу)!

Использовал 04 Trigger.bb

LLI.T.A.L.K.E.R. 13.07.2011 01:41

Ответ: Bullet Physics wrapper
 
Смоделировал модель в максе - пирамиду ([s]копия египетских[s], о да, я смог!)
PHP код:

Global entTrigger=LoadMesh("Pyramid.3ds")
ScaleEntity entTrigger,50,50,50 

PHP код:

Global bodyTrigger=btBodyCreateConcaveHull(entTrigger,0.5,0)
tBodySetScale(bodyTrigger,50,50,50

В итоге, то что надо:


Это вражеское зрение-детектор.
(пирамида так же мерцает)


В примере - поверхность зазеркалена... При включении видимости физ. тел - рисуются и у отзеркаленных моделей. Т.е. возможно столкновение с отражённой моделью?
Или же это блиц просто зеркалит линии.

Coks 13.07.2011 17:08

Ответ: Bullet Physics wrapper
 
1) Смещения центра масс нет! Как вариант создавать тела из мешей со смещенным центром \ вершинами (либо в максе, либо командами PositionMesh, RotateMesh).
2) Модель конуса подгоняется делением на два. Да, надо бы в самом враппере поправить.
3) Мерцание думаю вызвано зеркалом, у меня такое же было с плоскостью, не помню уже как убрал.
4) Блиц зеркалит линии - верно подметил!:)

Mr_F_ 13.07.2011 17:26

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

1) Смещения центра масс нет! Как вариант создавать тела из мешей со смещенным центром \ вершинами (либо в максе либо командами PositionMesh. RotateMesh).
автор буллета ещё советовал в таких случаях, что можно делать кампаундШейп из тела, т.к. при создании кампаунда можно указывать локальную трансформацию каждого подтела.

не могу сказать как это точно сделать в командах враппера, но уверен что можно.

Coks 13.07.2011 17:43

Ответ: Bullet Physics wrapper
 
Да, тоже хороший вариант, если надо динамически менять центр массы.

p.s. Тема еще для одного примера.

.Squid 14.07.2011 01:49

Ответ: Bullet Physics wrapper
 
Эрвину можно простить безалаберную документацию и молчанку на форуме. Но отсутствие нормального тензора инерции нельзя (( Фейки через компаунды не всегда подходят.

Coks 02.09.2011 15:31

Ответ: Bullet Physics wrapper
 
Обновление до 1.2.0.2
скачать триал (прямая ссыль)
скомпиленные примеры (прямая ссыль)

- мультиматериал на тримешь;
- смещение центра масс (фейк через составные тела);
- 3 новых примера;
- исправлены некоторые баги.

p.s. сделал рейтл версию наконец; обновил сайт.

Coks 29.09.2011 23:32

Ответ: Bullet Physics wrapper
 
Вложений: 2
Тест дефолтовой коллизии у софт боди с интересными настройками. Косяк - утечка памяти безвозвратно :(

ant0N 03.10.2011 20:05

а есть не скомпилированные примеры? дайте ссыл

UPD:
все, не надо..... ступил.. нашел!

Sashka007 07.01.2012 23:15

Ответ: Bullet Physics wrapper
 
Ребят, интересует такая вещь как пружины. Посмотрел справку и примеры не нашел ответа. Как сделать пружину между двумя объектами или точками?

Coks 08.01.2012 16:54

Ответ: Bullet Physics wrapper
 
Можно попробовать через джоинт Слидер + линейный Мотор.

Sashka007 08.01.2012 21:07

Ответ: Bullet Physics wrapper
 
Вложений: 1
Хочу сделать машинку на джоинтах, вообщем накопилось несколько проблем:
1. не могу разобраться с трением, какие бы большие коэффициенты я не ставил, все равно машинка сползает с кривой поверхности

2. если присмотреться, то видно, что ее както судорожно сводит, почему так?

3. допустим трение небольшое, для вращения колес я использую btBodyApplyLocalTorque, так вот те колес которые вращаются еще сильнее начинают скакать и дергаться, хотя я предпологал, что они просто проскальзывать будут, без судорог

А про пружины я интересовался для подвески авто.

Coks 10.01.2012 13:44

Ответ: Bullet Physics wrapper
 
Думаю тут мало шансов сделать хорошую подвеску на джоинтах. Чем больше их тем больше проблем.
Я пробовал делать подвеску на пружинах на каждое колесо (через слидер), но там тоже какая-то непонятная хрень была с коллизией колес.

burovalex 05.04.2012 20:53

Ответ: Bullet Physics wrapper
 
А вообще PhysX враппер - это легально?
В плане если написать игрульки мелкую с физиксом и попытаться ее в дальнейшем официально распрастранить, это законно? :mda:

pepel 19.08.2012 18:17

Ответ: Bullet Physics wrapper
 
блин. нету функций frozen для вращения и перемещения, может добавите?+)

Coks 30.08.2012 12:08

Ответ: Bullet Physics wrapper
 
Для заморозки используй следующие функции со значением factor = 0

вращение:
btBodySetAngularFactorX (rigidBody, factor)
btBodySetAngularFactorY (rigidBody, factor)
btBodySetAngularFactorZ (rigidBody, factor)

движение:
btBodySetLinearFactorX (rigidBody, factor)
btBodySetLinearFactorY (rigidBody, factor)
btBodySetLinearFactorZ (rigidBody, factor)

pepel 27.10.2012 09:17

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

еще думаю для веревки без коллизий может покатит мягкое тело, или ткань. ща буду теститьь

Coks может можешь запилить такую зависимость? или например сделать такую функцию, - чтобы вручную управлять точкой сочленения, был бы очень признателен.

Coks 29.10.2012 22:36

Ответ: Bullet Physics wrapper
 
Управление точной сочленения имеется:

для первого тела:
btJointSetPositionA (int joint, float x, float y, float z, int global)
btJointSetRotationA (int joint, float pitch, float yaw, float roll, int global)
для второго:
btJointSetPositionB (int joint, float x, float y, float z, int global)
btJointSetRotationB (int joint, float pitch, float yaw, float roll, int global)


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

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