Категории
Самые читаемые
onlinekniga.com » Компьютеры и Интернет » Программирование » Создание игр для мобильных телефонов - Майкл Моррисон

Создание игр для мобильных телефонов - Майкл Моррисон

Читать онлайн Создание игр для мобильных телефонов - Майкл Моррисон

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 23 24 25 26 27 28 29 30 31 ... 87
Перейти на страницу:

Пора сделать что-то действительно креативное! Я хочу, чтобы вы добавили еще один анимационный спрайт в мидлет UFO 2. Это может быть спутник, странный пришелец или комета, бороздящая космические просторы, – все, что захотите. Ниже приведено пошаговое описание, как это сделать:

1. нарисуйте или получите каким-либо другим способом изображение, состоящее из нескольких фреймов;

2. создайте член-переменную класса UFOCanvas, в которой будут храниться несколько экземпляров спрайта;

3. в методе start() мидлета загрузите изображение;

4. в методе start() создайте объекты типа Sprite новых спрайтов, не забудьте при инициализации каждого передать соответствующее изображение;

5. создайте код, обновляющий положение новых спрайтов, в методе update() проверяйте их положение на экране. Если вы хотите определять столкновения между созданными спрайтами и любыми другими спрайтами, то смело делайте это в методе update().

6. в методе draw() добавьте код, выполняющий рисование спрайтов.

Хотя для добавления спрайта в мидлет требуется выполнить несколько шагов, это не очень сложно. Уверен, что это упражнение послужит вам на пользу, потому как вам придется более глубоко проникнуть в код и поэкспериментировать, изменяя его.

Глава 7 Henway: дань игре Frogger

...

Архив Аркад

Выпущенная в 1980 году компанией Midway игра Rally-X была очень популярной, она представляла собой гонки в лабиринте. Вы управляете небольшим автомобилем по лабиринту, избегая столкновения с другими автомобилями. Интересный элемент игры Rally-X – это дымовая завеса, которую может выпускать автомобиль и временно нейтрализовать автомобили противника. Однако такая завеса требует дополнительного расхода топлива, поэтому, применяя ее, надо быть осторожным, – очень интересная находка в игре. Другая особенность X-Rally – это уменьшенная карта, на которой вы можете отслеживать свое положение, положение других автомобилей, а также флаги, которые необходимо собрать.

Вы потратили много времени, изучая программирование мидлетов и методов создания игр. Но пока вы еще не создали ни одной полноценной игры. В этой главе вы создадите свою первую игру, для этого вам потребуется применить все полученные знания о спрайтах. Игра Henway использует несколько спрайтов и все их возможности, о которых вы узнали в предыдущих главах. Эта игра во многом похожа на классическую игру Frogger, она является значительным этапом на пути постижения искусства программирования мобильных игр. Эту игру вы можете использовать как основу для создания собственных.

В этой главе вы узнаете:

► почему полезно моделировать мобильные игры на основе классических аркад;

► как разработать игру Henway, аналог классической игры Frogger;

► как написать код игры Henway;

► почему тестирование игры – это неотъемлемая часть процесса проектирования.

Об игре Henway

В оригинальной аркаде Frogger целью было перевести лягушку через шоссе и реку. На пути лягушки встречались преграды: автомобили, волны и крокодилы – это лишь часть из них. Лягушка должна была перейти целой и невредимой из нижней части экрана в верхнюю. С увеличением числа переправленных лягушек, возрастает и сложность игры – автомобили ускоряются, добавляются новые препятствия. Несмотря на то что по современным игровым стандартам Frogger – очень простая игра, это хороший пример классической игры, в которую весело играть. Поэтому эта игра как нельзя лучше подходит для создания собственной, немного фантазии – и готов новый игровой шедевр!

...

В копилку Игрока

Если вы удивлены моим подходом, то поймите, что я вовсе не призываю к тому, чтобы создавать игры на основе старых. Просто я обнаружил, что популярные игры прошлого могут дать хорошие идеи для создания новых. Сегодня многие пытаются создавать игры по мотивам популярных фильмов, но не каждый захочет разыгрывать драматический сюжет, особенно на экране мобильного телефона. В большинстве случаев люди предпочитают играть в простые игры, а следовательно, для этого как нельзя лучше подходят проверенные временем классические игры.

Популярность игры Frogger привела к тому, что по ее подобию был создан ряд игр в надежде на успех. Одна из этих игр называется Freeway, в ней цыпленок должен был перейти через загруженное шоссе. Freeway была создана компанией Activision для игровой системы Atari 2600, которая была первой игровой консолью, достигшей большого успеха на рынке. Как обладатель и поклонник игры Freeway я подумал, что было бы неплохо создать в этой главе ее аналог. Игра будет называться Henway.

В отличие от Frogger в игре Henway главным героем является цыпленок, которому во что бы то ни стало необходимо перебраться на другую сторону шоссе. Также, в отличие от Frogger, в этой игре цыпленка необходимо перевести из левой половины экрана в правую. Экран выглядит приблизительно так, как показано на рис. 7.1.

Рис. 7.1. Игра Henway состоит из старта, шоссе и финиша, а также спрайтов цыпленка и автомобилей

Как вы видите, препятствия на пути цыпленка – это четыре автомобиля, проезжающие вверх и вниз по шоссе. Автомобили движутся с изменяющимися скоростями, что делает игру более привлекательной. В отличие от Frogger, в которой вам необходимо провести лягушку в определенные места на экране, в Henway вы просто должны перевести цыпленка через дорогу.

...

В копилку Игрока

Обратите внимание, что все рассматриваемые в книге примеры очень просты. Хотя есть множество способов усовершенствовать игры, я к этому не стремлюсь, оставляя вам поле для деятельности. Моя цель – показать простой для понимания, работающий пример мобильной игры, которую вы сможете дополнить интересными для вас деталями. В конце большинства глав я подкину вам несколько идей, как сделать игры более привлекательными.

Вы начинаете игру с тремя цыплятами. Как только вы переведете всех цыплят через шоссе, игра закончится. Важно где-нибудь на экране показать, сколько цыплят осталось переправить через дорогу. Кроме того, при потере цыпленка или удачном преодолении шоссе следует вывести какое-нибудь сообщение. Не помешает и система подсчета очков, чтобы вознаградить вас за хорошую игру.

Анализ игры

Обзор игры, приведенный чуть ранее, уже определил некоторые элементы игры, даже если вы этого и не заметили. Например, вы уже догадались, сколько спрайтов нужно для игры? В игре будет пять спрайтов: четыре автомобиля и цыпленок. Но можно и увеличить число автомобилей, чтобы усложнить игру, однако в этом примере будет лишь четыре машины.

А теперь вы сможете догадаться, сколько растровых изображений вам понадобится? Если вы сказали шесть, то вы очень близки к правильному ответу. Ниже перечислены семь спрайтов, необходимые в игре:

► фоновое изображение шоссе;

► изображение цыпленка (рис. 7.2);

Рис. 7.2. Изображение цыпленка состоит из двух фреймов, на которых цыпленок идет вправо

► четыре изображения автомобилей (рис. 7.3);

Рис. 7.3. Все изображения автомобилей ориентированы вертикально, потому что они будут перемещаться вверх или вниз

► маленькое изображение головы цыпленка (рис. 7.4).

Рис. 7.4. Маленькая голова цыпленка символизирует число оставшихся жизней

Вы, вероятно, посчитали все эти изображения за исключением последнего. Маленькое изображение головы цыпленка используется, чтобы сообщить игроку, сколько жизней осталось. Например, в начале игры в нижнем правом углу экрана отображаются три маленьких головы цыпленка. Если цыпленок погибает под колесами автомобиля, то число жизней уменьшается на одну; игра продолжается до тех пор, пока хоть один цыпленок жив.

Теперь, когда вы имеете представление о графических объектах, используемых в игре, давайте рассмотрим, что еще нужно для игры. Во-первых, очевидно, понадобится отслеживать число жизней. Также, вероятно, вы захотите увеличивать число очков, если цыпленок удачно преодолел шоссе. Булевская переменная будет следить, завершена игра или нет.

Есть еще одна переменная, о необходимости которой можно сказать, прежде чем приступить к разработке и тестированию. Я говорю о задержке считывания ввода, эта величина поможет улучшить реакцию на пользовательский ввод. Если в каждом игровом цикле будет реакция на нажатия клавиш, то цыпленок будет перемещаться по экрану с неимоверной скоростью. Чтобы ограничить скорость его перемещения и понизить частоту обработки ввода, вы можете ввести специальную переменную и проверять нажатые клавиши, например, на каждом третьем игровом цикле....

В копилку Игрока

Точно определить задержку ввода нельзя, ее можно установить методом проб и ошибок, поэтому вы можете подобрать любое значение. Главное, чтобы обработка пользовательского ввода производилась на частоте, близкой к частоте нажатий клавиш игроком. Также помните, что величина задержки обработки пользовательского ввода может изменяться от одной игры к другой в зависимости от аппаратных ресурсов и скорости выполнения мидлета.

1 ... 23 24 25 26 27 28 29 30 31 ... 87
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Создание игр для мобильных телефонов - Майкл Моррисон.
Комментарии