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

Здесь есть возможность читать онлайн «Майкл Моррисон - Создание игр для мобильных телефонов» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Создание игр для мобильных телефонов: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Создание игр для мобильных телефонов»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Книга «Создание игр для мобильных телефонов» – это практическое руководство, которое поможет разработать и реализовать игру для мобильного телефона.
Книга написана простым языком, не содержит сложной и скучной теории программирования и шаг за шагом знакомит с методикой создания технологии «plug-and-play» применительно к созданию огромного количества игр.
В издание включены подробные описания и примеры кодов для четырех игр, а также информация, необходимая для реализации вашей собственной задумки.
Если вы любите играть в игры и занимаетесь программированием, то эта книга – для вас! Перевод: К. Михалкин

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

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

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

for (int i = 0; i < contentTypes.length; i++) {

// Draw the content type

g.drawString(contentTypes[i], 0, y, Graphics.TOP | Graphics.LEFT);

y += Font.getDefaultFont().getHeight();

// воспроизвести звук, если поддерживаются тоны

if (contentTypes[i] == "audio/x-tone-seq") {

try {

// воспроизвести среднее C (C4) в течение двух секунд (2000ms)

при максимальной громкости (100)

Manager.playTone(ToneControl.C4, 2000, 100); //Тон (среднее С) воспроизводится в течение 2 секунд на полной громкости в случае, если тоны поддерживаются устройством

}

catch(MediaException me) {

}

}

}

}

}

Метод paint() отвечает за вывод списка поддерживаемых типов контента. Как видите, метод Manager.getSupportContentTypes() заполняет строковый массив поддерживаемыми типами контента. Затем запускается цикл, в котором доступные типы по очереди выводятся на экран. Обратите внимание на два дополнительных пакета media, импортированных в код в первой строке.

Один интересный элемент приведенного кода – это проверка типа auto/x-tone-seq, которая завершается воспроизведением звука. Статический метод playTone() класса Manager, о котором вы подробнее узнаете в следующем разделе, используется для воспроизведения звуков. А пока вам достаточно знать, что второй параметр в этом методе – длительность воспроизведения звука в миллисекундах. Таким образом, в приведенном примере звук воспроизводится в течение двух секунд. А третий параметр в этой функции – громкость (в нашем примере 100 %).

Несмотря на то что код приложения весьма интересен, не менее интересно посмотреть на работу мидлета. На рис. 8.1 показан мидлет SoundCheck, запущенный в эмуляторе J2ME.

Рис. 8.1. Мидлет SoundCheck запрашивает типы поддерживаемого телефоном контента

Как видно из рисунка, мобильный телефон в эмуляторе J2ME поддерживает тоны, Wav-файлы, MIDI-музыку и MP3-аудио. Вы можете использовать эти результаты, чтобы включать поддержку определенных типов контента в мидлете.

Воспроизведение тонов в мобильных играх

Существует два принципиально разных метода воспроизведения тонов (звуков) в мобильных играх: использование тонов или последовательностей. Отдельный звук – это просто тон, имеющий определенную высоту и длительность воспроизведения. Хотя тоны, несомненно, ограничены событиями игры, они являются важной составляющей процесса разработки игр ввиду их простоты и эффективности. Чтобы воспроизвести звук, надо написать очень маленький код, затратив мало времени и ресурсов.

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

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

Воспроизведение отдельных звуков

Класс Manager в пакете javax.microedition.media используется для воспроизведения отдельных тонов. Этот класс содержит статический метод playTone(), который принимает следующие параметры:

нота– высота тона от 0 до 127;

длительность– длительность тона в миллисекундах;

громкость– громкость тона в процентах от максимального уровня громкости устройства.

Задать высоту звука из диапазона от 0 до 127 – не простая задача, но вы можете использовать математические формулы для вычисления нужной частоты звука. Не пугайтесь, я покажу вам наиболее простой способ определения значений нужных нот. Если вы вспомните, о чем шла речь в предыдущем разделе, в октаве – 12 нот (таблица 8.1). Расположив несколько октав по степени повышения звука, вы получите 128 нот. Отсюда и появился диапазон от 0 до 127 – каждой ноте соответствует один байт данных.

Так уж случилось, что средняя С имеет порядковый номер 60. В интерфейсе ToneControl пакета javax.microedition.media.control для средней С определена константа С4 (С в четвертой октаве). Поскольку вы знаете порядок нот (см. таблицу 8.1), вы без труда сможете вычислить значения нужных. Ниже приведен пример, как можно вычислить значения некоторых нот:

byte C4 = ToneControl.C4;

byte C5 = (byte)(C4 + 12);

byte A6 = (byte)(C4 + 21);

byte B6 = (byte)(C4 + 23);

byte G5 = (byte)(C4 + 19);

byte G4 = (byte)(C4 + 7);

byte D5 = (byte)(C4 + 14);

Первая переменная введена, чтобы упростить использование константы ToneControl.C4. Оставшиеся переменные – это ноты различных октав, которые рассчитаны относительно средней C4. Переменная C5 очень интересна, поскольку она на одну октаву выше, чем C4. Поскольку в октаве 12 нот, то, чтобы из C4 получить C5, можно к первой прибавить 12. Аналогично, чтобы из C5 получить C4, необходимо из C5 вычесть 12. Чтобы лучше понять операции с нотами, посмотрите таблицу 8.1. Теперь, когда вы знаете, как определить высоту ноты, вам остается лишь передать ее в метод Manager.playTone() и воспроизвести ее:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Создание игр для мобильных телефонов»

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


Отзывы о книге «Создание игр для мобильных телефонов»

Обсуждение, отзывы о книге «Создание игр для мобильных телефонов» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x