Тема: Arcanoid
Показать сообщение отдельно
Старый 05.11.2012, 15:44   #2
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Arcanoid

Тебе нужно найти перпендикуляр от плоскости от которой отражаешь вектор, и затем вычислить угол между перпендикуляром и вектором скорости шарика, и затем инвертировать его параллельно перпендикуляру.
Если у тебя плоскость в арканойде всегда горизонтальна, то просто отражай Y (инвертируй).
Если же не всегда горизонтальна, то как сказал выше.
Далее в арканойде обычно градус отскока зависит от места относительно середины платформы куда попадает шарик. Тут всё просто - чем левее попадает, тем левее наколнён перпендикуляр, и правее - наоборот.
Ты можешь даже обойтись без градусов, просто инвертируй Y и умножай на коэффициент левее / правее (0.5 - 1.0 - 1.5) - (левее, центр, правее) X вектора, таким образом будешь изменять вектор направления. Этот коэффициент должен быть плавным а не по условию.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Volcano (05.11.2012)