Показать сообщение отдельно
Старый 02.10.2005, 17:34
Arsentev вне форума Посмотреть профиль Отправить личное сообщение для Arsentev Найти все сообщения от Arsentev
  № 10  
Ответить с цитированием
Arsentev

Регистрация: Sep 2005
Адрес: Russia, Voronezh
Сообщений: 20
Cool еще один вариант - для продвинутых :)

Лучший способ, особенно, если всё находится в движении - делай в векторах.

Например есть класс вектора (сам создаешь/юзаешь чужой) - типа 2 точки с координатами x и y.
Дальше всё просто:
1. добавляешь к каждому вектору свойство типа торможение/ускорение (обычно исп. название friction).
2. добавляешь к своему объекту свойства:
speed (тип - вектор)
gravity (тип - вектор)
...
3. в каждую перерисовку делаешь следущее:
создаешь временный вектор (для преобразований), присваиваешь временному вектору по очереди свои векторы(gravity, ...) и делаешь ему перемножение на его свойство friction (если надо), затем каждый комбинируешь с вектором speed.
После энтого всего смещаешь свой объект на вектор speed.

Элементарно! А гланое не надо лишних sin, cos, atan, ... !