Здравствуйте, Александр.Сергеевич, Вы писали:
АС>Здравствуйте, Maraba, Вы писали:
M>>Здравствуйте, Александр.Сергеевич, Вы писали:
АС>>>Здравствуйте, Maraba, Вы писали:
M>>>>Собираюсь делать игру пинбол для мобильного на j2me. Разрабатываю алгоритм и не могу кое-чего понять: как вычислить направление отскока шарика от кривой поверхности? (зал (игровое поле) хранится как картинка в растровом формате)
АС>>>Ну это физика.
Раздел Кинематика.
АС>>> Игра 2Д или 3Д?
M>>Игра 2D, но все же это не физика а скорее геометрия
АС>ага, а как насчет импульса? ускорения? скорости
АС>В общем смотри у тебя есть структура такого типа:
АС>АС>struct ball
АС>{
АС> int32_t x, y; // координаты
АС> int32_t vx, vy; // скорость по х и у
АС> [...тут еще чего-нибудь...]
АС>};
АС>
АС>теперь, когда сталкивешься с поверхностью, смотри куда она наклонена влево/право, вверх/низ и соответственно меняй знак у соответствующей компоненты скорости. Для мобилы алгоритм покатит — быстро, а реалистичность особая и не надо.
АС>Можешь менять не просто знак скорости, а еще и величину.
АС>В общем это то, что сейчас в голову пришло, может есть более простое решение.
То, что надо ускорение и скорость — это понятно. Как раз самая сложная проблема состоит в том, чтобы определить куда наклонена поверхность. Ведь в пинболе поверхности не только прямые, но и изогнутые.