Просмотр полной версии : [Box2D] Зеркальное отражение персонажа(flip)
Есть персонаж, состоящий из множества объектов с соединением b2RevoluteJointDef, надо, чтобы можно было его зеркально отразить(это для того чтобы он ходил влево и в право). Подскажите пожалуйста как это можно реализовать?
strangedk
02.08.2012, 18:14
Я думаю что средствами box2D это прекрасно можно реализовать.
А направление расчитывайте по вектору, и делайте scaleX = -1;
Я думаю что средствами box2D это прекрасно можно реализовать.
А направление расчитывайте по вектору, и делайте scaleX = -1;
Там много объектов, их можно как-то объединить в группу, чтобы потом ей присвоить scaleX = -1?
strangedk
02.08.2012, 21:45
Насколько я помню в Box2D используется практика содержать ссылки на визуальные объекты в UserData самих физических тел.
Вместо этого объедините все ваши визуальные объекты в один визуальный класс, а в UserData храните типизированные значения координат-поворотов, и чего вам еще нужно.
Соответственно в цикле обновления мира собирайте информацию из UserData физических объектов, касающихся непосредственно визуальных, и передавайте её выше описанному классу.
Кстати, не забудьте в классе сделать проверку на изменение данных. Если данные заходят те же - то просто игнорируйте их - это поможет с производительностью.
Вместо этого объедините все ваши визуальные объекты в один визуальный класс
Вот это я и не понимаю как можно сделать в box2d
caseyryan
02.08.2012, 23:04
Я думаю что средствами box2D это прекрасно можно реализовать.
А я думаю иначе. Средствами бокс2д это реализовать невозможно. Только разрушив тело, и создав его заново. Но это больше походит на костыль.
Хотя для довольно простой игры такой способ может быть вполне применим
А я думаю иначе. Средствами бокс2д это реализовать невозможно. Только разрушив тело, и создав его заново. Но это больше походит на костыль.
Хотя для довольно простой игры такой способ может быть вполне применим
Я думаю будет большая нагрузка на процессор после каждого разворота создавать заново где-то 9 объектов. Или не будет?
caseyryan
03.08.2012, 07:54
Не будет. 9 объектов - это мелочи.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.