Современная электронная библиотека ModernLib.Net

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

ModernLib.Net / Программирование / Майкл Моррисон / Создание игр для мобильных телефонов - Чтение (Ознакомительный отрывок) (стр. 2)
Автор: Майкл Моррисон
Жанр: Программирование

 

 


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

Эта платформа наиболее широко поддерживается производителями мобильных телефонов в США. Такие гиганты, как Motorola, Nokia, Research in Motion (RIM) и Samsung, поставляют телефоны, поддерживающие J2ME.

<p>Binary Runtime Environment for Wireless (BREW)</p>

В отличие от J2ME, поддерживаемого широким спектром телефонных аппаратов, BREW – это платформа, ориентированная на телефоны с технологией Qualcomm's CDMA (Code Division Multiple Access – множественный доступ с кодовым разделением каналов). Но это не говорит о том, что BREW имеет весьма ограниченное распространение. Для создания игр для платформы BREW разработчики часто используют язык программирования C или C++ в сочетании с BREW API. BREW также поддерживает такие языки разработки приложений, как XML и даже Java.

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

Платформа BREW нашла наибольшее распространение в Азии (особенно в Японии и Южной Корее). В США на сегодняшний день Alltel и Wireless – это лидирующие поставщики беспроводных решений, предлагающие телефоны с поддержкой BREW.

<p>Symbian</p>

Symbian – это мобильная операционная система, которая имеет существенное отличие от BREW. Оно заключается в том, что это открытая операционная система, доступная по лицензии любому производителю мобильных телефонов. Операционная система Symbian была разработана компанией Symbian Ltd., которая является консорциумом компаний Motorola, Nokia, Panasonic и Sony/Ericsson. Благодаря простоте лицензирования, эта ОС поддерживается многими моделями телефонов.

Существует масса возможностей при разработке приложений для Symbian, поскольку эта операционная система поддерживает такие языки программирования, как C++, Java и Visual Basic. На сегодняшний день большинство мобильных игр и приложений для Symbian написаны на C++, поскольку это обеспечивает большое быстродействие и интеграцию с операционной системой, нежели аналоги, созданные с использованием Java. Несомненно, Java начинает компенсировать недостаток в производительности между приложениями, написанными на этом языке, и собственным кодом, но все-таки в большинстве случаев собственные программы работают эффективнее, чем Java-аналоги. Это особенно важно, если дело касается игр, где каждая доля мощности процессора на счету.

Так почему бы не остановиться на Symbian, а не на Java? Простой ответ заключается в том, что Java распространен широко, в то время как Symbian – это лишь одна из операционных систем.

Мобильные телефоны значительно отличаются от персональных компьютеров тем, что имеют весьма разнообразное программное и аппаратное обеспечение. Java – это унифицирующая технология, позволяющая использовать созданное приложение на различных типах телефонов.

<p>Windows Mobile Smartphone</p>

Вы ведь не думали, что Microsoft будет сидеть в стороне и спокойно следить за развитием мобильных игр без собственной операционной системы, не так ли? Конечно, нет! Компания Microsoft немного преуспела, выпустив операционную систему Windows Mobile, устанавливаемую на карманных компьютерах и усовершенствованных мобильных телефонах, известных как смартфоны (Smartphone). Хотя некоторые Pocket PC могут выполнять функции мобильных телефонов, все-таки они ближе к PDA, нежели к телефону, хотя бы по своим габаритным характеристикам: Pocket PC имеет достаточно широкий экран (240х320), а для ввода используется перо (stylus).

Хотя Pocket PC как устройства не очень похожи на мобильные телефоны, операционная система Windows Mobile – это совершенно иное дело. Компания Microsoft смиренно ждет времени, когда технологии мобильных телефонов смогут соответствовать требованиям недавно выпущенной операционной системы Smartphone, которая является разновидностью Windows Mobile для мобильных телефонов. Эта операционная система привлекает прежде всего тем, что она не является «урезанным» вариантом Windows Mobile. Главное ее отличие заключается в измененном интерфейсе (ввиду меньших размеров экрана и отсутствия электронного пера). В итоге вы получаете полноценную систему Windows Mobile в мобильном телефоне с логотипом Smartphone.

Но что это значит с точки зрения перспективы разработки мобильных игр? Это значит, что вы можете использовать те же самые инструменты API, которые сегодня применяются для создания игр для Pocket PC, например, С, С++ или Microsoft C# в сочетании с Windows Mobile API. Разработка игр для Pocket PC активно ведется в течение нескольких последних лет, поэтому в некотором смысле Smartphone изначально получает значительный толчок, несмотря на то, что эта операционная система является сравнительно новой для рынка.

Компании Motorola и Samsung производят смартфоны в США на основе AT&T Wireless и Verizon Wireless. Однако ввиду силы компании Microsoft, я вижу в скором будущем быстрое увеличение количества предлагаемых на рынке устройств, снабженных этой операционной системой.

<p>Java как платформа для мобильных игр</p>

Если вы умудрились прочитать все примечания «В копилку Игрока», то вы уже знаете, что в этой книге внимание будет уделено именно J2ME. Я объясню такое решение чуть позже, а пока рассмотрим, что же представляет собой эта технология, и какие возможности она предоставляет с точки зрения программирования мобильных игр.

<p>Что такое Java?</p>

Ранее я упоминал, что изначально Java был языком программирования, который позволял сетевым устройствам связываться друг с другом. Если быть более точным, то Java зарождался как проект в Sun, целью которого было научиться внедрять компьютеры в повседневную жизнь. Одной из основных задач проекта было заставить все компьютеризованные устройства взаимодействовать друг с другом. Как выяснилось, Sun опередил свое время в попытке использовать Java для соединения бытовых приборов. Однако компания быстро отреагировала и завершила работу над проектом, сделав Java успешным Web-ориентированным языком программирования.

Как только технология и потребность на рынке совпали с исходным назначением Java, и Sun подняла свои предыдущие наработки и приспособила Java для мобильных телефонов. J2ME разработан не только с учетом ограничений мобильных телефонов, он также подходит для программирования беспроводных соединений. J2ME – это лишь подмножество более глобального инструмента Java, который состоит из языка программирования, API и среды выполнения.

<p>Почему Java?</p>

Даже если бы Java был идеально приспособлен для разработки приложений для мобильных телефонов, он бы не нашел широкого применения без поддержки промышленности. На сегодняшний день Java – доминирующая технология разработки программного обеспечения для мобильных телефонов. Все говорит о том, что Java укрепится на рынке и, вероятно, расширит свой сегмент. По оценкам ряда специалистов к 2007 году будет продано 450 миллионов телефонов, поддерживающих Java, что составит 75 % рынка сотовых телефонов.

Разработчики активно используют Java, поскольку эта платформа является открытой. Это значит, что если вы разработали код, то его можно использовать в различных мобильных устройствах. К сожалению, такая «открытость» Java была несколько осложнена наличием API других производителей и различиями аппаратного обеспечения различных устройств. Тем не менее вы можете написать код и, не внося никаких изменений, использовать его на разнообразных мобильных телефонах. Сравните это с платформой BREW, созданной специально для телефонов, работающих в сетях Qualcomm CDMA.

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

С технической точки зрения, несмотря на то что Java и J2ME «более открыты», чем BREW, тем не менее они до сих пор не являются языками программирования с открытым кодом. Все разновидности Java-технологии, включая J2ME, принадлежат Sun Microsystems. К счастью, Sun была очень любезна и дала возможность свободного формирования стандартов Java однако многие разработчики до сих пор лоббируют их, чтобы перевести Java в сообщество Открытого Кода.

Интересный виток взаимоотношений между Java и BREW случился в конце 2002 года, когда в свет вышла виртуальная машина Java для устройств, работающих на платформе BREW. Это означает, что BREW-устройства могут эффективно работать с Java-приложениями, как будто они изначально поддерживали Java. Но при этом Java не конкурировала с BREW как платформа для разработки игр. Однако поскольку телефоны, поддерживающие только Java, не поддерживают BREW, появление виртуальной машины означает увеличение доли на рынке, если вы используете Java.

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

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

<p>Java и программирование мобильных игр</p>

Вы знаете «что» и «почему», а теперь важно рассмотреть вопрос «как». Иначе говоря, как программировать мобильные игры с помощью Java? Прежде всего при программировании игр вызывают интерес следующие области технологии:

? графика и анимация;

? звук;

? пользовательский ввод;

? работа в сети.

В следующих нескольких разделах рассматривается каждый из этих вопросов с точки зрения J2ME.

Графика и анимация

Стандартный API включает поддержку всевозможных графических элементов, таких как, например, изображения, двухмерные графические примитивы (линии, прямоугольники, эллипсы и т. д.) и анимация. В терминах анимации J2ME поддерживает спрайты – изображения, свободно перемещаемые по экрану вне зависимости от других. API среды J2ME также поддерживает детектирование столкновений спрайтов, что позволяет определять, столкнулись ли два спрайта. Это очень важное свойство, необходимое для создания практически любой игры в стиле «экшн». Вы познакомитесь со спрайтами в главе 5.

Другая интересная особенность J2ME – это замощенные слои. Вы можете выбрать небольшое изображение и замостить им фоновый слой. Такие слои используются в играх для создания больших перестраиваемых карт, что позволяет сэкономить память. Благодаря удобному менеджеру слоев в J2ME можно с легкостью управлять несколькими слоями. Таким образом, можно создать один слой – полностью фоновый, который можно использовать как декорацию, и еще один слой – для создания преград на пути героя игры. В главе 10 рассказывается о замощенных слоях, а в главе 11 речь идет о менеджере.

Обработка ввода пользователя

Пользовательский ввод очень важен для игр: он определяет, как удобно игроку взаимодействие с игрой. Также ввод очень важен потому, что определяет первичный интерфейс между игроком и игрой. J2ME поддерживает клавишный ввод, который на сегодняшний день является единственным способом ввода на мобильном телефоне. Существует возможность непосредственно считывать состояние клавиш на телефоне, это очень важно, если вы хотите обеспечить высокую степень взаимодействия игрока и игры. Особенности обеспечения ввода через J2ME API описаны в главе 6.

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

Помните, что клавиши на мобильных телефонах значительно отличаются в зависимости от модели, но всегда есть похожие клавиши, выполняющие сходные функции. Если говорить более подробно, то на телефонах, поддерживающих Java, всегда есть клавиши, отвечающие за перемещения влево, вправо, вверх, вниз и стрельбу, а также ряд прочих «полезных клавиш». Для телефонов, оснащенных джойстиками, каждое из отклонений соответствует направлению: влево, вправо и т. д.

Использование звука в играх

«Большую тройку» самых важных элементов мобильных игр завершает звук. J2ME поддерживает воспроизведение цифрового звука в форматах PCM или WAV, а также музыку в формате MIDI. Поддержка звука основана на Java Media API – API, предназначенного для записи и воспроизведения звука и видео на мобильных устройствах. Для разработки игр все, что вам понадобится узнать, – это как в нужный момент воспроизвести звук и, может быть, видео.

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

Чтобы не уходить далеко от разработки игр, в этой книге будут рассмотрены лишь вопросы воспроизведения аудио средствами J2ME.

В главе 8 вы познакомитесь с программированием звуков, а также звуковым форматом WAV и музыкальным MIDI.

Мобильные сети

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

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

О сетевых мобильных играх речь пойдет в главе 14, а в главе 15 будет рассмотрен пример создания такой игры.

<p>Небольшой пример на J2ME</p>

Основной набор инструментов и API, необходимых для создания полноценных Java-приложений, известен как J2SE (Java 2 Standard Edition). J2SE используется как для создания самостоятельных приложений, так и для программирования Web-апплетов. Другая разновидность Java – это J2EE (Java 2 Enterprise Edition), предназначенный для создания корпоративных приложений. J2EE отличается от J2SE, поскольку для него существенна функциональная поддержка корпоративных приложений. Представьте большое сетевое приложение, обеспечивающее работу eBay или Amazon.com, и вы поймете, для чего предназначен J2EE.

Учитывая, что мобильные беспроводные устройства имеют меньшие вычислительные мощности и меньшие экраны (по сравнению с настольными аналогами), становится очевидным, что J2ME – это упрощенная версия J2SE с уменьшенным набором функций. На самом деле J2ME – это часть J2SE, которая поддерживает минимальный набор инструментов, необходимый для программирования мобильных устройств как проводных, так и беспроводных.

Также J2ME обладает рядом особенностей, уникальных для мобильных устройств. Эти три пакета (J2ME, J2SE и J2EE) образуют технологию Java 2.

Вы можете спросить, зачем я затрагиваю прочие разновидности Java в книге, посвященной программированию мобильных игр. Дело в том, что это обязательный минимум, который вы должны знать в отношении J2ME. Не волнуйтесь – после того как вы немного больше познакомитесь с J2ME, мы приступим к созданию игр!

<p>Конфигурация и ограниченная конфигурация мобильного устройства</p>

Если вы используете J2ME, то вы столкнетесь с новыми терминами и аббревиатурами. Во-первых, вы встретите термин «конфигурация» (configuration). Конфигурация – это минимальный набор API, необходимый для написания приложения и его запуска на ряде мобильных устройств. Стандартная конфигурация мобильных устройств известна как Ограниченная Конфигурация Мобильного Устройства (Connected Limited Device Configuration, CLDC). CLDC – это минимальный набор функций, которым должно обладать любое беспроводное устройство. В CLDC учитываются такие факторы, как объем свободной памяти устройства, а также мощность процессора.

Если рассмотреть более подробно, CLDC включает в себя следующие параметры мобильного устройства:

? множество используемых Java-функций;

? функциональность виртуальной машины Java;

? набор API, необходимый для разработки приложения;

? аппаратные средства мобильного устройства.

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

? объем памяти, необходимый Java, составляет 160 Кб;

? 16-битный процессор;

? низкое потребление энергии (обычно низкий расход батареи);

? соединение с сетью (часто беспроводное со скоростью 9600 бит/с или меньше).

К CLDC устройствам относятся (но не только указанные устройства) мобильные телефоны, пейджеры, PDA, карманные компьютеры и бытовые приборы. Конечно, нас прежде всего интересуют мобильные телефоны.

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

Кроме CLDC J2ME определяет еще одну конфигурацию, известную как CDC (Connected Device Configuration – Конфигурация сетевого устройства), которая накладывает ограничения на более мощные и габаритные устройства по сравнению с мобильными. Следовательно, CDC имеет больший набор возможностей, чем CLDC.

<p>Профили и MIDP</p>

Во главе конфигурации находится профиль (profile), который представляет собой особый набор API, предназначенный для конкретного типа устройства. Конфигурация в общих чертах описывает семейство устройств, в то время как профиль дает более детальное описание, выделяющее тип устройства внутри семейства. MIDP (Mobile Information Device Profile – информационный профиль мобильного устройства) – это профиль, построенный на основе CLDC, который описывает беспроводные мобильные устройства, такие как телефон или пейджер.

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

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

Существует две версии профиля MIDP: 1.0 и 2.0. Хотя телефоны MIDP 1.0 имеют достаточно большую функциональность, MIDP 2.0 предоставляет более широкие возможности J2ME для программирования игр. Эта книга целиком посвящена MIDP 2.0, поскольку такие мобильные телефоны с огромной скоростью замещают телефоны, поддерживающие более ранний профиль MIDP 1.0, если уже не полностью вытеснят их к моменту, когда вы закончите прочтение книги.

Оценка требований MIDP к аппаратному обеспечению

Важной частью стандарта MIDP являются требования к аппаратному обеспечению устройств MIDP 2.0. Эти требования накладываются на следующие параметры:

? память;

? экран;

? ввод;

? сеть.

Требования к памяти согласно MIDP 2.0 следующие:

? 256 Кб недоступной памяти для библиотек MIDP API;

? 128 Кб памяти для системы работы Java;

? 8 Кб недоступной памяти для постоянных данных приложений.

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

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

Если вам интересно, то в MIDP постепенно начинают входить джойстики. Компании Sony/Ericsson и Samsung предлагают мобильные телефоны с маленькими джойстиками, встроенными в клавиатуру. Поскольку на самом деле MIPD непосредственно не поддерживает джойстики, то джойстик можно использовать, если его положения ассоциированы с соответствующими клавишами клавиатуры.

Требования MIDP к дисплею представляют особый интерес, поскольку для мобильных устройств экран – это один из самых ограниченных параметров. Устройство MIDP должно иметь экран размером 96х54 пикселя с глубиной цвета 1 бит. Это означает, что экран должен быть как минимум 96 пикселей в высоту и 54 пикселя в ширину и, по крайней мере, должен быть черно-белым. Кроме того, форматное соотношение экрана должно быть 1:1, это означает, что пиксели должны иметь форму прямоугольника.

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

В реальности большинство телефонов MIDP 2.0 превосходят минимальные требования за счет цветного дисплея и более широкого экрана.

Последнее требование к аппаратному обеспечению – это работа в сети, которое оговаривает минимальные требования к поддержке сетей. MIDP-устройство должно иметь двунаправленное беспроводное сетевое соединение любого вида. Такое соединение может быть прерывным (например, dial-up) и иметь ограниченную скорость передачи данных (9600 бит/с). Это очень важно, поскольку при разработке мобильных игр вы должны быть очень внимательны при определении скорости передачи данных, особенно в играх, для которых быстродействие необходимо (игры в стиле «экшн»).

Оценка требований MIDP к программному обеспечению

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

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

? механизм чтения и записи в постоянную память;

? механизм для установки таймеров и отметки времени данных;

? доступ на запись/чтение к сетевому соединению устройства;

? механизм перехвата ввода с клавиатуры или сенсорного экрана;

? минимальная поддержка битовых изображений;

? механизм распределения жизненного цикла приложений.

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

<p>Резюме</p>

Я знаю, что вам, вероятно, уже не терпится написать какой-нибудь код и окунуться с головой в программирование мобильных игр, однако в этой главе речь шла об основах. Вы узнали не только о мобильных играх в общих чертах, но также и о различных опциях разработки мобильных игр. Если говорить более подробно, вы узнали, что Java – это лидирующий пакет, и почему эта платформа будет пользоваться значительным успехом в будущем. В конце главы вы познакомились с J2ME, версией Java, предназначенной для программирования мобильных телефонов. Я не люблю выдавать много «фоновой информации», но будет весьма полезно, если вы как можно быстрее узнаете о тонкостях создания игр для Java-совместимых мобильных телефонов.

<p>Экскурсия</p>

Я не могу закончить эту главу, не порадовав вас. Если вы – счастливый обладатель мобильного телефона с поддержкой Java, посетите Handango (http://handango.com/) и найдите какую-нибудь игру. Да, именно Handango, а не Fandango – сайт для заказа билетов в кинотеатр. Большинство игр на этом сайте имеют демо-версии, которые вы можете бесплатно загрузить, перед тем как купить ту или иную игру. Поэтому эта экскурсия не будет вам ничего стоить. Пролистывая списки игр, обратите внимание, может быть, что-то упущено, и у вас, вероятно, появятся идеи создания собственной игры

Глава 2

Основы разработки мобильных игр на Java

Архив Аркад

В 1976 году компания Midway выпустила игру Sea Wolf. В ней вы смотрите в перископ и выпускаете торпеды в проплывающие в верхней части экрана корабли. При этом раздается звук, очень похожий на звук подводной лодки. Игра Sea Wolf – это аналог популярной в конце 60-х годов механической игры Periscope компании Sega Интересно, что Periscope была первой игрой, в которой за каждый из боев приходилось платить 25 центов. Такой стандарт цены перекочевал и в другие аркады.

Поняв, почему в обозримом будущем именно Java станет платформой для разработки мобильных игр, вы будете готовы к тому, чтобы научиться создавать мобильные игры. К счастью, Sun Microsystems абсолютно бесплатно предлагает пакет J2ME Wireless Kit для разработки мидлетов (MIDlet) на J2ME. В этой главе вы познакомитесь с J2ME Wireless Toolkit и узнаете, как его использовать для создания мобильных игр для Java-устройств. Вы также научитесь использовать эмулятор J2ME для проверки работы и запуска приложений, что позволит вам играть в созданные игры, не загружая их на мобильный телефон. Вы узнаете, что эмуляция – это очень важный этап при разработке мобильных игр.

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

? об основах разработки игр;

? как использовать J2ME для создания мобильных игр;

? как применять инструмент KToolbar для построения и тестирования мобильных игр;

? как с помощью эмулятора J2ME можно имитировать реальные мобильные телефоны.

<p>Основы разработки игр</p>

Перед тем как мы начнем изучать J2ME Wireless Toolkit и его использование для построения и тестирования мобильных Java-игр, полезно узнать об основах разработки игр. У вас есть идеи о том, какую игру написать? Если так, то вы, вероятно, уже осознали, что идея – это самая простая часть процесса создания игры. Разработка концепции игры и ее реализация – для многих из нас очень сложное занятие. Но ничего страшного, всему свое время, прежде надо продумать процесс создания игры.

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

? основная идея;

? режимы игры.

? сюжетная линия;

<p>Основная идея</p>

Первое, что вы должны сделать, – это определиться с основной идеей вашей игры. Вы хотите создать «стрелялку», лабиринт, ролевую игру или что-то среднее? Или вы придумали игру, которую нельзя отнести ни к одной из этих категорий? Цель игры – уничтожить плохих парней, спасти хороших или просто исследовать неизвестные миры? Как долго будет длиться ваша игра, или, может быть, она будет бесконечной? В любом случае, фиксируйте все мысли, поскольку идеи приходят и уходят, было бы плохо упустить что-либо. Фиксируя идеи, вы больше начинаете думать об игре и представлять ее более детально.

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

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

В настоящее время есть несколько случаев, когда компьютерная игра послужила основой для создания фильма. Как пример можно привести фильмы Mortal Combat («Смертельная схватка»), Final Fantasy («Последняя фантазия») и Resident Evil («Обитель зла»).

Вне зависимости от ваших предпочтений, помните, что игра должна развлекать. На самом деле я думаю, что именно это делает компьютерные игры столь привлекательными для программистов. Главная цель игры – максимум развлечения. Кто не хотел бы проводить целые дни в мыслях о том, как развлечься? Если ваша игра не доставляет радости, то ей не помогут ни великолепная графика, ни потрясающий звук. Я стараюсь показать, что при разработке игры главное – это доставить максимальное удовольствие пользователю. После того как вы сформировали основную идею игры и решили во что бы то ни стало сделать ее максимально захватывающей, пора переходить к проработке сюжетной линии.

<p>Разработка сюжетной линии</p>

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


  • Страницы:
    1, 2, 3