Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   [Box2D] Получить значение силы удара или импульса (http://www.flasher.ru/forum/showthread.php?t=170200)

provigator 20.10.2011 15:27

Получить значение силы удара или импульса
 
Я создал несколько тел
Они сталкиваются и каждый получает удары какой-то силы или импульс
Каким свойством можно считать значение полученного импульса или удара?
По типу как я считываю координату - bb.GetPosition().x
Вообще это надо, чтобы подсчитать сумму значений импульсов или ударов полученных телом и при превышении какого-то значения удалить тело - имитировать разрушение

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

GBee 20.10.2011 16:03

1) в 2.1 отнаследоваться от b2ContactListener и задать его через _world.SetContactListener. Нужный вам метод по идее
Код AS3:

public virtual function PostSolve(contact:b2Contact, impulse:b2ContactImpulse):void { }

Скорее всего урон надо накапливать (или уменьшать жизнь) в самом объекте.

2) Написать свой обход списка с поиском элемента по индексу.

provigator 20.10.2011 16:42

Вопрос остается
Как получить данные силы удара полученные телом при столкновении?

goodguy 20.10.2011 17:03

Никак. Бокс2д не позволяет показать импульс для конкретного тела. Но можно поделить данные из импульса пополам


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

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.