Главная » Программирование игр под Android

ОПТИМИЗИРОВАТЬ ИЛИ НЕ ОПТИМИЗИРОВАТЬ? – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 29 July, 2013 категория: Программирование игр под Android

Пришло время протестировать нашу новую игру. Единственное место в ней, где необходима высокая скорость, – это игровой экран. Я просто поместил экземпляр класса FPSCounter в класс GameScreen и вызывал метод FPSCounter.logFrame в конце работы метода GameScreen. render. Вот результаты для устройств Него, Droid и Nexus One:

Читать »

Рисование простых фигур – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 27 July, 2013 категория: Программирование игр под Android

Каких-то 150 страниц – и вот мы уже готовы нарисовать первый пиксел. Сейчас мы быстро пробежимся по некоторым методам прорисовки, предлагаемым классом Canvas

Рисование пикселов. Начнем с рисования одного пиксела, которое осуществляется следующим методом:

Читать »

КАМЕРА В 2D – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 27 July, 2013 категория: Программирование игр под Android

 

До этого момента у нас не было понятия камеры в нашем коде; мы только определили область видимости камеры (конус отображения) при помощи glOrthof :

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

Читать »

РАЗМЕЩЕНИЕ ИГРЫ НА ANDROID MARKET – РАЗРАБОТКА ИГР ДЛЯ ANDROID

Добавлено Дата: 27 July, 2013 категория: Программирование игр под Android

 

Пришло время зайти в ваш аккаунт на сайте Android Market. Просто перейдите по ссылке http://market.android.com/publish и войдите в него. Вас поприветствует интерфейс, показанный на рис. 13.6.

Читать »

Androidlnput: отличный координатор – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 27 July, 2013 категория: Программирование игр под Android

Реализация интерфейса Input для нашей игры связывает вместе все обработчики, которые мы только что создали. Любые вызовы методов будут передаваться соответствующим обработчикам. Единственная часть реализации, которая требует особого внимания, – выбор того, как запрограммировать TouchHandl ег в зависимости от версии Android, установленной на устройстве.

Читать »

Простая солнечная система, центром которой является ящик – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 25 July, 2013 категория: Программирование игр под Android

Создадим небольшой пример, очень простую солнечную систему, центром которой будет являться ящик. Допустим, имеется один ящик, расположенный в точке (0; 0; -6) системы координат создаваемого мира. Вокруг этого ящика-солнца на расстоянии, равном 3 единицы, мы хотим поместить ящик-планету, вращающийся вокруг солнца. Планета должна быть меньше солнца, выберем для нее размер 0,2 единицы. Вокруг ящика-планеты поместим ящик-спутник. Расстояние между планетой и спутником будет равно 1 единице, а ящик-спутник будет уменьшен до 0,1 единицы. Все объекты вращаются вокруг их относительных предков в плоскости xz, а также вокруг собственных осей у. На рис. 10.14 показан примерный вид этой модели.

Читать »

Уменьшение размера текстуры – выбираем меньше пикселов – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 23 July, 2013 категория: Программирование игр под Android

Что еще можно изменить? Кое-что, что не так уж очевидно. Наши экземпляры класса Bob имеют размер 32 х 32 единицы. Мы используем плоскость проекции размером 320 х 480 единиц. На Него получаем идеальную визуализацию с точностью до пиксела. На Nexus One или Droid одна единица в нашей системе координат будет занимать чуть меньше пиксела. В любом случае наша текстура фактически имеет размер 128 х 128 пикселов. Нам не нужно такое большое разрешение, уменьшим размер изображения текстуры bobrgb888. png до 32 х 32 пиксела. Назовем новое изображение bobrgb888-32×32. png. Используя эту меньшую по размеру текстуру, получим следующие значения кадровой частоты для каждого устройства:

Читать »

Проверка пересечения ограничивающих сфер – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 22 July, 2013 категория: Программирование игр под Android

Математика расчетов столкновений сетей треугольников или ограничивающих параллелепипедов может быть довольно запутанной. Для нашей следующей игры отлично подойдут ограничивающие сферы. Существует простой прием, который мы уже применили в игре Большой прыгун: чтобы сферы более удачно вписывались, мы сделаем их меньше, чем графическое представление определенных объектов. На рис. 11.13 показана сфера космического корабля.

Читать »

ОПРЕДЕЛЕНИЕ ПРИЛОЖЕНИЯ ANDROID: ФАЙЛ МАНИФЕСТА

Добавлено Дата: 20 July, 2013 категория: Программирование игр под Android

Приложение Android может состоять из большого количества различных компонентов.

Активности – компоненты представления пользовательского интерфейса и взаимодействия с ним.

Сервисы – процессы, работающие в фоновом режиме и не имеющие видимого интерфейса. Например, сервис может отвечать за получение почтовым сервером новых писем.

Читать »

Непрерывная прорисовка с SurfaceView – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 18 July, 2013 категория: Программирование игр под Android

Этот пункт – для настоящих мужчин (и женщин). В нем говорится о потоках и всех неприятностях, с ними связанных. Но мы выйдем из него живыми, я обещаю.

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

Читать »

Класс Camera2D – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 15 July, 2013 категория: Программирование игр под Android

Объединим все рассмотренные детали работы с камерой в один класс. Мы хотим, чтобы в нем хранились позиция камеры, стандартные ширина и длина области видимости и переменная масштаба. Мы также хотим иметь удобный метод для правильного назначения порта просмотра (всегда использовать весь экран) и матрицы проецирования. Еще нам нужен метод для перевода координат при касании в координаты нашего мира. Наш новый класс Camera2D показан в листинге 8.15.

Читать »

ПЕРСПЕКТИВНАЯ ПРОЕКЦИЯ: БЛИЖЕ, БОЛЬШЕ – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 15 July, 2013 категория: Программирование игр под Android

 

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

Читать »

Работа с регуляторами громкости – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 14 July, 2013 категория: Программирование игр под Android

Если у вас есть телефон на Android, то знаете, что при нажатии кнопок увеличения и уменьшения громкости вы управляете разными параметрами в зависимости от того, какое приложение в данный момент используете. При звонке вы регулируете громкость голоса вашего абонента, в приложении You Tube – громкость звукового сопровождения ролика, на главном экране – громкость звонка.

Читать »

СПРАЙТ-АНИМАЦИЯ – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

Добавлено Дата: 13 July, 2013 категория: Программирование игр под Android

Если вы когда-нибудь играли в 20-видеоигру, то заметили, что мы до сих пор не занимались одним очень важным компонентом – спрайт-анимацией. Анимация состоит из так называемых ключевых кадров, которые создают иллюзию движения. На рис. 8.25 вы можете увидеть прекрасный анимированный спрайт, созданный Ари Фельдманном (взят из его безгонорарной библиотеки SpriteLib).

Читать »

СТАНОВИМСЯ СОЦИАЛЬНЫМИ – РАЗРАБОТКА ИГР ДЛЯ ANDROID

Добавлено Дата: 13 July, 2013 категория: Программирование игр под Android

Один из самых больших трендов в играх последних лет – это интеграция с социальными сервисами. Twitter, Facebook и Reddit стали важной частью жизни многих людей. Эти люди хотят играть вместе со своими друзьями и семьей. Что может быть круче, чем победить своего отца в Zombie Shooter 13?

Читать »