Отдача от взрыва
Как реализовать такую штуку - рядом взрывается объект, и от него идет взрывная волна, отталкивающая все объекты рядом..?
Я так понял это импульс, но как его посчитать?.. |
Ответ: Отдача от взрыва
взрывная_волна_радиус += скорость_взрыва * делта_времени_кадра
для каждого объекта если расстояние от центра взрыва меньше чем радиус взрыва то задать импульс объекту направленный от центра взрыва к центру объекта если взрывная_волна_радиус больше взрывная_волна_максимум_радиус то уничтожить взрывную волну |
Ответ: Отдача от взрыва
Весь день меня выручаешь, спасибо огромное.
А как задать импульс направленный от центра одного объекта к центру другого?.. |
Ответ: Отдача от взрыва
Цитата:
|
Ответ: Отдача от взрыва
Вычитать из центра - координаты? Как это делается, идиотом же себя чувствую..)
|
Ответ: Отдача от взрыва
Код:
float dx = EntityX(explosion) - EntityX(body) dx = dx * 0.99 не уверен за синтаксис. писал в браузере. команды могут быть другими. суть та же. |
Ответ: Отдача от взрыва
А почему бы не:
Код:
float alen = power_of_explosion / xEntityDistance(BodyBully,BodyDupe); |
Ответ: Отдача от взрыва
Это все круто, конечно, но мне бы именно пинка дать, импульс.
Я ж на физике все это пытаюсь сделать. |
Ответ: Отдача от взрыва
Даёшь пинок обьекту в направлении вектора между источником и целью...сила пинка зависит от дистанции...то есть чем дальше обьект, тем слабее пинок(сила толчка=сила взрыва*дистанцию(обьект,цель)).
|
Ответ: Отдача от взрыва
Спасибо, мужики.
|
Часовой пояс GMT +4, время: 08:45. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot