forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Физический мир (http://forum.boolean.name/showthread.php?t=15045)

Medan 03.07.2011 13:17

Физический мир
 
Покажите, пожалуйста пример физ. мира с неподвижным объектом и подвижным. А то я уже запарился. Не получается, потому как делаю не правильно.

Nerd 03.07.2011 13:42

Ответ: Физический мир
 

Хелп ниасилил?

Тупо добавляешь к entity body. Чтоб объект был неподвижным, ему нужно задать нулевую массу. Все функции описаны в хелпе. Алсо, xUpdateWorld.

.Squid 03.07.2011 14:11

Ответ: Физический мир
 
Йопт, наделал 25 разных примеров по физике и все равно непонятно? о_О

Medan 03.07.2011 14:14

Еще раз повторюсь.
Цитата:

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

Мне не понятно потому как там много лишнего, b3d нету.

Ладно, вопрос закрыт, мне не справится с тем что я задумал.

Mind 03.07.2011 16:26

Ответ: Физический мир
 
У меня была таже проблема на буллете.
Но нет ничего невозможного:
Немного фантазии и сообразительности - вот что нужно программисту...
Кароче, гравитация не действует,незнаю почему,но думаю потому, что на тело не воздействует никаких сил (эт наверно сделано для большей производительности). Поэтому в главном цикле добавляешь силу к объекту(можешь минимальную например pxBodyAddForce telo,0,0.0001,0,2)
и все должно пахать. Вот и все!

NitE 03.07.2011 16:30

Ответ: Физический мир
 
.Squid, где они?

Medan 03.07.2011 16:42

Ответ: Физический мир
 
Вложений: 1
А почему объекты друг друга не касаются? Вот на картинке 2 объекта. Черный неподвижный. Красный падает и стоит как на картинке. Если сдвигать его в сторону высокой стены, он будет выше, в сторону низкой, ниже. Почему?

Mind 03.07.2011 16:47

Ответ: Физический мир
 
Возможно ты неправильно построил физ.модель уровня.
Если ты экспортируешь из 3ds max`a то ставь,обязательно(после перемещения,поворота,увелечения объекта), ResetXForm!

Medan 03.07.2011 16:51

Ответ: Физический мир
 
Цитата:

Если ты экспортируешь из 3ds max`a то ставь,обязательно(после перемещения,поворота,увелечения объекта), ResetXForm!
Это где ставить в максе или ксорсе?

Mind 03.07.2011 16:58

Ответ: Физический мир
 
:( Ты макс знаешь!?

Это ставится в максе -> выделяешь все объекты -> правая сторона сверху -> нарисован молоточек -> открываешь его -> третья вкладка с низу -> называется ResetXForm -> открываешь её -> нажимаешь resetselect! -> Экспорт!!! :ok:

Medan 03.07.2011 17:03

Ответ: Физический мир
 
Все равно так же(

NitE 03.07.2011 17:10

Ответ: Физический мир
 
xEntityAddConcaveShape - не выпуклое
xEntityAddConvexShape - выпуклое

Ты не правильно строишь физ. модель. У тебя получилось выпуклое тело, тебе нужно не выпуклое (т.е. с впадинами, например.)

Medan 03.07.2011 17:10

Ответ: Физический мир
 
Цитата:

xEntityAddConcaveShape - не выпуклое
xEntityAddConvexShape - выпуклое
Да нет таких функций

.Squid 03.07.2011 17:11

Ответ: Физический мир
 
<kz
1) Тело в состоянии покоя засыпает. Будится автоматически при коллизии. Приложение силы тело не будит - надо будить вручную.
2) %Xors3d%\Samples\Source\Blitz3D\Physics\
3) Надо использовать правильное геометрическое тело. Если статика: тримеш. Если динамика, то в зависимости от сложности тела / реалистичности коллизий: простые тела (сфера, куб ...), компаунды (состоят из простыхтел), выпуклое тело (convex - вот из-за него происходит то, что изображено на картинке в посте №7), вогнутое тело (concave).

Medan 03.07.2011 19:40

Ответ: Физический мир
 
В новой версии нет ф-ции xEntityAddHullShape, xEntityAddTriMeshShape без массы. Что использовать вместо этих функций?
И ф-ция xEntityAddTerrainShape, правильно работает?

Medan 03.07.2011 21:22

Ответ: Физический мир
 
Подскажите как сделать нормальное управление на физике... Чтобы объект не переворачивался при столкновении. Как физически поворачивать объект, пробовал поворачивать функцией xEntityApplyTorque, но объект поворачивается не вокруг своего центра.

.Squid 04.07.2011 00:56

Ответ: Физический мир
 
xEntityApplyCentralTorque

Medan 04.07.2011 00:58

Ответ: Физический мир
 
Такой функции точно нет

.Squid 04.07.2011 06:08

Ответ: Физический мир
 
Да, точно. Втупил.
Чтобы объект не переворачивался при столкновениях, можно ограничить вращение вокруг определенных осей. См. xEntitySetAngularFactor


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

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