Ваш вопрос слишком общий для переполнения стека никто не собирается делать свой проект для Вас. Предполагая, что у вас есть базовый опыт программирования, если вы не получите книги и не узнаете это в первую очередь.
Предполагая, что вы уже выбрали Android из-за своего тега и считаете, что игра 2d проще.
Предварительные запросы: Установите java + eclipse + android sdk, если у вас уже нет. Создайте новый проект и используйте пример Лунного Ландара, убедитесь, что он работает на вашем телефоне или эмуляторе.
Начальный образец: В лунном лаваре есть игровая петля отдельная нить, которая постоянно перерисовывает весь экран, она делает это, постоянно вызывая функцию doDraw. Затем вы должны использовать холст, чтобы рисовать линии, круги, коробки, цвета и растровые изображения, чтобы они напоминали вашу игру. (canvas.draw ....) Лунный ландвард не использует openGL, поэтому его медленнее, но гораздо проще в использовании.
Снятие образца: Вы, вероятно, не хотите, чтобы кейветы или лунный космический корабль! Удалить все в функции OnDraw Удалить OnKeyUp, OnKeyDown Удалить все ошибки, что случаются Создать новую
@Override
public boolean onTouchEvent(MotionEvent event){
return false;
}
запустить его, вы должны получить пустой экран, это ваш холст, чтобы начать делать свою игру .. Вы упомянули о шарах, разделите их на то, что такое мяч: позиция и направление, создайте переменные для шаров x, y direction_x и direction_y событие касания захочет изменить направление мяча, событие ничьей будет хотеть переместить мяч (добавив направление x, y к шару x, y) и нарисуйте шарик (canvas.drawCircle (x, y, radius, new Paint())), чтобы больше шаров искало и читало о массивах. Самое главное начать просто и экспериментировать.
2 столкновения
Коллизии может быть сделано в dodraw функции и разбита на: перемещение объекта, проверка, если этот объект прошел, где она должна идти, и если да, переместить его обратно, прежде чем кто-нибудь заметит. ... есть много по-разному методы обнаружения столкновений:
Если ваши стены все горизонтальные и вертикальные (самый простой), то поле столкновения проверяет шары новый х, у + -радиус против стены через х, у, ширина и высота его один большой, если утверждение и Google имеет миллиарды примеров.
Если ваши стены наклонены, то ваше столкновение с столкновением в нужной точке, у вас в основном есть линия (вектор) того, где ваш шар возглавляет вектор вашей стены, создайте функцию, чтобы проверить, где сталкиваются две линии, и проверьте, как на стене, так и в радиусе вашего шара (функции пересечения линии google)
или вы можете использовать выбор цвета, вы рисуете сцену, зная, что все ваши стены красные, например, затем проверьте, новый мяч x, y is, красный и знает, что вы нажмете
Удачи, надеюсь, что это он Немного облегчил, прост и пробовал, и, надеюсь, это поможет вам начать, и ваши следующие вопросы могут быть более конкретными.
Посмотрите на коробку 2d код и учебники, особенно box2d lite. Он разработан, чтобы быть простым. – Rick