Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Тут можно читать онлайн Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - бесплатно ознакомительный отрывок. Жанр: comp-programming. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    3.3/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Гэри Розенцвейг - Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript краткое содержание

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - описание и краткое содержание, автор Гэри Розенцвейг, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Данная книга посвящена программированию игр с помощью ActionScript. Здесь вы найдете подробные указания, необходимые для создания самых разных игр – аркад, головоломок, загадок и даже игровых автоматов. В тексте приведены исходные коды программ и детальные, доступно изложенные инструкции. Базовые принципы программирования ActionScript рассматриваются на примере игр, однако вы без труда сможете применить полученные знания и для разработки неигровых проектов, таких как Web-дизайн и реклама. Рекомендации Гэри Розенцвейга помогут вам не только придумывать занимательные игры и размещать их на Web-сайте, но и оптимизировать скорость их работы, а также защищать свои творения от несанкционированного копирования. Представленный в книге код несложно изменить для использования в других программах.

Книга предназначена для широкого круга читателей – создателей анимационных роликов, художников-оформителей, программистов и разработчиков Web-сайтов. Издание может также выступать в качестве практического пособия по изучению ActionScript.

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - читать онлайн бесплатно ознакомительный отрывок

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Гэри Розенцвейг
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Рисунок 17.1. В течение 30 кадров большая лиса бежит справа налево

Индикатор в правом верхнем углу рис. 17.1 показывает, что скорость этого ролика составляет 35 кадров в секунду. На самом деле ролику задана скорость 120 кадров в секунду. 35 кадр/сек – реальный результат работы Flash-проигрывателя, который воспроизводит анимацию. Для того чтобы в верхнем правом углу отображалась надпись "35 fps", необходимо добавить небольшой фрагмент кода. В первый кадр кода надо поместить следующую строчку, чтобы запомнить время начала анимации:

startTime = getTimer();

В последнем, 30-м кадре, программа, используя время начала и конца анимации, подсчитывает, сколько миллисекунд заняло ее воспроизведение. Полученная величина отображается в текстовом поле.

totalTime = getTimer() – startTime;

totalFrames = 30;

fps = totalFrames/(totalTime/1000);

readout = int(fps) + "fps";

Результат работы этого кода можно увидеть в ролике Benchmark1.fla, размещенном на Web-сайте поддержки книги. Когда я проигрывал ролик на своем Макинтоше в окне предварительного просмотра, результат варьировал от 33 до 35 кадр/сек [20] . Скорость также зависит от изменения масштаба. Попробуйте изменить масштаб в окне предварительного просмотра и посмотрите, как изменится скорость ролика.

...

Совет

Важно помнить, что максимальная скорость, которую может предоставить Flash в таких случаях, – 120 кадр/сек. Если вы укажете скорость по умолчанию, равную, скажем, 12 кадр/сек, анимация будет проигрываться только с этой скоростью или медленнее. Даже если один способ будет быстрее другого, вы не заметите никакой разницы, так как в обоих случаях скорость окажется равна 12 кадр/сек.

Рисунок 17.1 был получен при проигрывании ролика в окне предварительного просмотра. Что же произойдет, если открыть окончательный swf-файл с помощью Flash-проигрывателя вне программы Flash? Вы получите несколько лучший результат, примерно 42 кадр/сек. То есть ролик воспроизводится Flash-проигрывателем быстрее, чем в окошке предварительного просмотра. Проигрывание Flash-ролика в браузере (Internet Explorer 5.1) дает меньшую скорость – примерно 22 кадр/сек.

Конечно, эти числа имеют значение только при сравнении друг с другом. Когда те же действия производились на других компьютерах (как под управлением ОС Windows, так и Macintosh), результаты были другими: где-то ролик проигрывался быстрее, где-то – медленнее. Вы даже не можете быть уверены, что скорость анимации будет одинаковой на другом компьютере того же производителя и такой же модели. У компьютера может быть другое разрешение, на нем могут больше работать в сети (это уменьшит скорость воспроизведения ролика при загрузке из сети), или диск может быть больше фрагментирован. Проводить тест установления контрольных точек имеет смысл только на одинаковых компьютерах при одинаковых условиях.

Выбор лучшей альтернативы

Исходный файл: Benchmark2.fla

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

Можно уменьшить число кадров с 30 до 15, скорость увеличится в два раза, но анимация станет менее плавной. Так как клип лисы управляет длиной шага, лиса сделает в два раза меньше шагов, чтобы пробежать то же самое расстояние.

Если такой вариант не помогает, возможно, стоит изменить размер лисы. Что произойдет, если уменьшить лису в два раза? С одной стороны, число векторов изображения останется прежним, то есть время на построение изображения не зависит от его масштаба. С другой стороны, так как лиса будет меньше, для создания ее изображения понадобится меньшее число пикселов, следовательно, скорость ролика увеличится (понадобится меньше ресурсов для отображения каждого кадра).

Проверить эти гипотезы можно с помощью установки контрольных точек. Если уменьшить в два раза фигуру лисы в ключевых кадрах, вы получите такую же анимацию, только лиса будет меньше. Сценарий покажет, повлияло ли это на скорость ролика. (Готовый ролик Benchmark2.fla вы найдете на Web-сайте). Результат сравнения показан на рис. 17.2.

Рисунок 17.2. Ролик с небольшим изображением проигрывается быстрее

Маленькая лиса двигается быстрее, чем большая. Во Flash-проигрывателе на моем компьютере ролик воспроизводился со скоростью 60–70 кадр/сек, что примерно в два раза превышает скорость предыдущего ролика. Это подтверждает теорию о том, что для построения меньшего графического объекта требуется меньше времени.

Теперь остается выяснить, удовлетворяет вашим потребностям анимация с меньшим изображением лисы? Если да, то вопрос выбора альтернативы решен.

Оптимизация в ActionScript

Исходный файл: Benchmark3.fla

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

Допустим, вы заметили, что в коде используется следующее сравнение:

if (myVariable == true) {

Понятно, что то же самое можно записать проще:

if (myVariable) {

Иногда первую строчку легче понять, но почему второй вариант увеличивает скорость работы программы? Вы могли использовать сотни или тысячи подобных сравнений внутри циклов и т. д.

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

Следующий фрагмент построен для сравнения типа "истина/ложь". Сначала создается массив из 5000 элементов вида false и true. Этот процесс при подсчете времени учитываться не будет. Время засекается после того, как массив был создан. Измеряем время на подсчет количества элементов, равных true. Для этого используется оператор ==. В конце сценарий выводит время, которое потребовалось для 5000 сравнений.

function benchMacrk1() {

// Создаем новый массив.

testArray = new Array;

// Заполняем массив значениями true или false.

temp = false;

for(I=0; I<5000; I++) {

testArray.push(temp);

if (temp == false) {

temp = true;

} else if (temp == true) {

temp = false;

}

}

// Определяем время начала проверки.

startTime = getTimer();

// Подсчитываем, сколько значений true находится в массиве.

count = 0;

for(I=0; I

if (testArray[I] == ture) {

count++;

}

}

// Определяем время, потребовавшееся для проведения проверки.

totalTime = getTimer() – startTime;

// Отображаем результаты.

trace("Benchmark Test: using ==")

trace(:Total Time: “ + totalTime + "ms");

}

Сам по себе результат ничего не значит. Однако вы также создадите функцию benchmark2,в которой строчка if(testArray[I] == true) {будет заменена на if(testArray[I]) {. Это единственная разница между функциями. Следовательно, если скорость выполнения сценария изменится, это произойдет вследствие замены строчек.

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

Интервал:

Закладка:

Сделать


Гэри Розенцвейг читать все книги автора по порядку

Гэри Розенцвейг - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript отзывы


Отзывы читателей о книге Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript, автор: Гэри Розенцвейг. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x