Вниз  Android-программирование (1-ые посты)
- 2.06.2014 / 22:48
neitron
  Пользователь

neitron 
Сейчас: Offline
mrEDitor, В классе MainActivity я строкой
setContentView(new Menu(this));
я показываю меню.И когда я в меню выбирал игру показиваю класс Game. И вот как это реализовывать не ясно.
- 2.06.2014 / 22:58
mrEDitor
  Пользователь

mrEDitor 
Сейчас: Offline
neitron, Menu сохраняй в переменную, а не передавай напрямую в функцию, и игру по нажатию "старт" также создаешь Game в переменную, потом в setContextView
- 2.06.2014 / 23:08
andreyKorotayev
  Пользователь

andreyKorotayev 
Сейчас: Offline
Помогите с моим вопросом
- 2.06.2014 / 23:10
prayncode
  Пользователь

prayncode 
Сейчас: Offline
Помогите с моим вопросомНе можешь сформулировать?
- 2.06.2014 / 23:17
andreyKorotayev
  Пользователь

andreyKorotayev 
Сейчас: Offline
Народ столкнулся с проблемой при создании классического пинг понга, а именно когда доска отбивает мяч.Поиграл в чужие пинг понги и запутался:
От чего зависит изменение скорости и угла отражения мяча?

Изменено andreyKorotayev (2.06 / 23:18) (всего 1 раз)
- 3.06.2014 / 05:24
samogost
  Пользователь

samogost 
Сейчас: Offline
andreyKorotayev, все просто,по закону физики, посмотрев отдельно изменения вертикальной скорости и горизонтальной можно увидеть , что при касании левой или правой стенки изменяется только скорость по оси икс, а при касании верхней или нижней стенки только по оси игрек. Вот пример изменения знака переменной на противоположный:
y=-y;

Изменено samogost (3.06 / 05:28) (всего 6 раз)
- 3.06.2014 / 06:00
ilyaX2D
  Пользователь

ilyaX2D 
Сейчас: Offline
andreyKorotayev, Это от твоей фантазии зависит) Раздели доску на 3 области - две крайние, да центр... И проверяй в какую мяч прилетел. Если в центральную, то пусть по касательной летит, поменяв лишь игрек на противоположный знак. А если скажем в левую, то отрази и X и Y. Ведь визуально логично будет выглядеть. Только области крайние совсем маленькими делай, чтоб было видно, что шарик действительно от угла доски отлетает... Хотя нюансы всякие вылезут, когда шарик двигаясь параллельно движению доски заденет край... Тогда он должен отскочить по касательной, а не отразить угол... Но это уже твоя забота - проверять ещё и направление полёта шарика при ударе о доску) :hack: Кстати скорость можешь добавлять, когда шарик ударяется от ребра доски именно в момент, когда ты двигаешь доску навстречу шарику... Обдумай эти моменты и получится неплохой физический сурогат))

Изменено ilyaX2D (3.06 / 06:05) (всего 1 раз)
- 3.06.2014 / 06:57
Salat-Cx65
  Пользователь

Salat-Cx65 
Сейчас: Offline
Либо ты плохо играл, либо не понял механику.
Как писали выше, если касание происходит на средине платформы, то просто отскок делаем, а если на краях, то немного изменяем угол (можно даже хитро реализовать что угол менялся в зависимости от места куда коснулся шарик, таким образом чтоб игрок смог компенсировать назад если получиться очень большой угол)
Похожая ситуация с ускорением, если платформа неподвижна, то просто отскок, если платформа двигаться в ту же сторону что и шар, то "передаем импульс" скорости от платформы шару, он разгоняется. И наоборот, если двигаються навстречу, то "притормаживаем" шар.
Понятно что углы и скорости должны иметь граничные значение, иначе можно очень сильно замедлить шар или наоборот, разогнать до неиграбельной скорости.
С углами та же история, не надо давать летать шару горизонтально
- 3.06.2014 / 07:54
andreyKorotayev
  Пользователь

andreyKorotayev 
Сейчас: Offline
Народ спасибо очень помогли!!!
,но вопрос как изменить угол,че там синусы ,косинусы?
- 3.06.2014 / 08:43
samogost
  Пользователь

samogost 
Сейчас: Offline
andreyKorotayev, так как по закону физики угол падения равен углу отражения , то мой алгоритм работает со всеми углами.
Наверх  Всего сообщений: 4453
Фильтровать сообщения
Поиск по теме
Файлы топика (184)