В последнее время нельзя не отметить одну интересную тенденцию — появилось много новых компьютерных игр среднего класса. Сделаны они в большинстве своем очень добротно, и при этом их с большой охотой покупают и скачивают пользователи. Другими словами, сейчас появилась серьезная прослойка между казуальными играми и ААА-блокбастерами. Что касается реализуемых идей в этом сегменте, то во многом понятно, почему эти игры пользуются популярностью. Дело в том, что за основу берутся в основном хиты 90-х-начала 00-х, качественно преобразуются. При этом мы получаем весьма неплохой геймплей и низкие требования к ресурсам ПК, что особенно актуально для многочисленных владельцев нетбуков и маломощных машин. Большое количество таких игр не пишется с нуля, а делается в конструкторах. Когда ко мне поступило предложение от одних разработчиков «замутить» подобный проект (пригласили на позицию геймдизайнера, речь шла об экономической стратегии в изометрии), я решил рассмотреть рынок «среднего звена» поближе, и что действительно удивило, так это малое количество откровенно плохих игр, также редко встречаются поделки, собранные «на коленках». При этом поразило и достаточно большое количество представителей классики жанров, особенно в области стратегий, экономических в том числе. В общем, ситуация развивается весьма интересно, причем именно за «средним звеном» мне видится большое будущее, тем более, что сейчас планшеты становятся актуальными.
Начиная с этого материала, мы стартуем обзор наиболее актуальных конструкторов и движков для 2011 года. Главным образом будем обращать внимание на решения, доступные обычным смертным:).
Из юмора
Вообще, в сообществе разработчиков очень много различного юмора, иногда просто зачитываешься форумами, например, чего стоит диалог…
Человек 1: Надоели эти крохоборы, такие деньжищи за движки требуют! Давайте, соберемся и напишем свой движок! Человек 2: Ааааа! От таких мыслей жутко становится. Человек 3: А че, нормальная идея. Помогу чем смогу, сейчас учу Turbo Basic…
Хотя больше всего меня в последнее время повеселило описание Trinity Vision Game Engine на одном из популярных русскоязычных ресурсов, цитирую: «Немецкая компания Trinigy имеет уже более 150 крупных лицензиатов, среди которых Ubisoft, Take 2, Dreamcatcher, NeoWiz, TimeGate Studios, Robot Entertainment, Nitro Games, бездари из Spellbound, а также многие другие известные и не очень студии и компании разработчиков игр». Если кто не в курсе:))), «бездари из Spellbound» — это те, кто делал Gothic4. Как говорится, кто их сейчас только не пинает. Причем «бездари», «криворукие», «что у них с мозгами» — самые легкие эпитеты в отношении разработчиков из Spellbound, есть в несколько раз грубее и смешнее:)). Честно говоря, я сам сказал очень некультурное слово, когда начал проходить четвертую часть и увидел, что сделали с великой игрой эти... Впрочем, это только вершина проблемы, о чем мы поговорим чуть подробнее в конце статьи.
Unreal Development Kit
На момент написания этого материала в феврале вышла очередная бета-версия с большим количеством обновлений. Фактически мы говорим о полноценном игровом движке, нередко используюшимся в разработке игр топ-класса. Программирование базируется на собственном языке сценариев UnrealScript, который концептуально и синтаксически очень близок к С++ и Java. Изучается очень быстро. Хотя в данном случае мы говорим о весьма упрощенном высокоуровневом программировании, при этом для автоматизации связывания скриптов используется очень удобная и понятная система Unreal Kismet. Отдельно стоит сказать о весьма удобной системе программирования искусственного интеллекта, адаптированной для работы с большими проектами с множеством персонажей. Что касается физики, то тут мы имеем стандарт NVIDIA PhysX, для облегчения работы с которым (настройки и редактирования) есть специальный модуль Unreal PhAT.
С точки зрения графики и анимации в данном случае мы можем говорить не только об интеграции с известными пакетами и поддержке основных технологий, но и о наличии собственного инструментария. Визуализатор UDK Gemini с рендерингом 64-bit HDR дает великолепные по реалистичности результаты, для освещения используется очень мощная технология Unreal Lightmass, специально для скелетной анимации имеется модуль AnimSet Viewer, все «навороты» в области частиц реализованы в рамках Unreal Cascade. Отдельно стоит сказать о прекрасном модуле SpeedTree Foliage Editor, позволяющий создавать деревья.
Стоит сказать, Unreal Development Kit является одним из представителей тех профессиональных игровых движков, которые уже используются не только в геймдеве, но и при создании фактически любой современной медийной продукции — анимационных фильмов, в телевидении, визуализации научных и инженерных исследований. Ведь на самом деле технологическая разница между отраслями уже постепенно стирается. Достаточно сказать, что в фильме «Аватар» освещение было рассчитано на игровых технологиях, но если бы вместо них использовались стандартные из мира профессионального 3D, то «Аватар» вышел бы гораздо позже.
Хотя, конечно, иногда доходит и до веселого — я встречал варианты, когда в данном «наборе» делали дизайн интерьеров.
Для некомерческого использования Unreal Development Kit можно скачать в полнофункциональном виде абсолютно бесплатно. Хотя, если вы захотите создавать на нем продукты на продажу, то будьте готовы раскошелиться — движок/конструктор дорогой. Поддерживаемые ОС — PC (Windows), iOS (iPhone, iPad, iPod), в будущем планируется поддержка игровых консолей.
Unity
На сегодня это, пожалуй, один из самых перспективных движков/конструкторов. На момент написания этой статьи вышла версия 3.2, в которой значительно улучшены графические возможности, и отдельное внимание уделено реалистичности анимации водных поверхностей (стоит выделить возможность создания пены на берегах рек и океанов).
Вообще, Unity раскручивается очень хорошо. Например, меня полгода назад удивила анкета на сайте разработчиков игр Intel, в рамках которой часть вопросов задавалось именно по Unity3D (еще одно часто встречающееся название этого движка/конструктора). Стоит отметить, что распространению способствует не только хорошее качество с большим количеством возможностей, но и наличие функционирующей бесплатной версии. Таким образом, Unity вы можете скачать как freeware, Unity Pro стоит $1500, также отдельно докупаются разновидности, позволяющие вести разработку под различные платформы. Отличия Unity от Unity Pro довольно существенны особенно в области возможностей рендеринга (визуализации). Впрочем, вы сами можете увидеть все своими глазами, поскольку на бесплатное скачивание дается версия, в которой режим Pro включен 30 дней.
Теперь немного о «внутренностях». По концепции эта среда ближе к идее конструктора, нежели игрового движка, то есть все довольно удобно структурировано, причем многое можно сделать на визуальном уровне без программирования. Главный элемент — это мощный редактор, в котором создаются уровни и так далее.
С точки зрения графики мы имеем поддержку API DirectX и OpenGL, сама система визуализации в Unity соответствует требованиям игр ААА-класса, дается возможность использования очень большого количества шейдеров, причем рендеринг может предусматривать и пост-обработку, то есть наложение различных эффектов на уже просчитанные кадры. Отдельного внимания заслуживают модули реализации освещения с использованием световых карт (Lightmapping), включая и глобальное освещение. Помимо этого имеются специальные настройки для камер, даются различные варианты использования линз.
Для создания и редактирования ландшафтов Unity предоставляет довольно мощный инструментарий, в котором можно найти и генератор деревьев в том числе. А в целом, как говорится, «рисуем все жирными мазками кисти».
Физика в Unity — NVIDIA PhysX, есть варианты для работы с твердыми и мягкими телами, одеждой/тканями, а также благодаря отдельному акцентированию в Unity довольно удобно делать гонки, то есть присутствует специальная физика для автомобилей. Скриптовое программирование базируется в основном на адаптированном под собственные нужды варианте JavaScript либо же C#, а также предусмотрена поддержка уникального языка Boo (одного из диалектов Python). Вместе с тем, стоит сказать, что сама игровая логика в рамках Unity строится на .NET платформе с открытым исходным кодом Mono, которая, как известно, использует в качестве основного языка C#.
На момент написания этой статьи большая часть продукции, сделанной на Unity, которая мне встретилась, являлась браузерными играми. На самом деле, в этом плане движок/конструктор дает очень широкие возможности реализации, особенный уклон сделан на направление ММО.
jMonkey
В последнее время очень часто говорят о мультиплатформенности, которая стоит довольно больших денег в рамках дорогих движков и конструкторов. Также люди часто платят за то, чтобы как можно меньше или же как можно легче программировать. Но в любом случае от программирования как такового, если речь идет о мало-мальски серьезном проекте, уйти не удастся. Графический движок jMonkey интересен тем, что он, во-первых, бесплатен (лицензия BSD позволяет делать на нем коммерческие приложения), во-вторых, базируется на модном языке Java. Разработчики jMonkey фактически дают мощный структурированный набор всего необходимого, а все остальное — дело ваших рук и умений.
В качестве основного графического API используется OpenGL, реализована интеграция с основными 3D-форматами, включая COLLADA, 3DS, Obj, MD2, MD3, X3D, Milkshape, ASE, поддерживается скелетная анимация, есть современный модуль по работе с частицами. Имеется система столкновений, математическая система для быстрых алгебраических вычислений, отдельная система освещения, система теней, симуляция тканей, камера также рассчитывается как отдельный объект. В целом, продукт достаточно серьезен и дает много возможностей, если вы общаетесь на «ты» с программированием на Java и понимаете структуру функционирования компьютерных игр. Нужно сказать, что сам язык Java является кроссплатформенным, OpenGL распространен тоже везде, то есть в этом плане среда универсальна. Скачать и посмотреть все воочию можно по ссылке — http://jmonkeyengine.com.
Для новичков — Ren’Py
Если говорить о продукции начального уровня, то хороших добротно сделанных конструкторов не так много. Но вместе с тем, нужно же на чем-то учиться детям, или дать возможность создания игр людям, которые имеют мало опыта и/или слабо знакомы с программированием.
Ren’Py — это как раз-таки тот конструктор, который позволяет на начальном уровне разрабатывать вполне неплохие игры начального уровня сложности. Основная сфера применения — создание визуальных новелл, то есть небольших диалоговых приложений с движением от картинки к картинке. Конечно, мы описали самый стандартный вариант, поскольку есть много расширений и хитростей даже в этом жанре, то есть сам процесс разработки может быть расширен. Если человек захочет развиваться дальше, ему дается возможность написания скриптов на простом языке Python. В данном случае он сможет создавать что-то более сложное. Отдельно стоит сказать о хорошо сделанной документации, наличии обучающих программ. Вокруг Ren’Py имеется русскоязычное сообщество, присутствует и русская версия продукта. Поэтому дам ссылку сразу на нее.
Среда разработки бесплатна при соблюдении двух условий: создав игру, вы сообщаете о ней разработчикам (они включают ее в свой каталог), и имена разработчиков должны присутствовать в титрах.
Если использовать Ren’Py для обучения тех же детей, то могу сразу отметить, что они приобретут следующие навыки: - Создание сюжетных линий с логическими связями.
- Подготовка контента для создания игры: текста, изображений (JPEG/JPG, PNG, BMP, GIF), музыки (OGG Vorbis, OGG Speex, MOD, WAV (только PCM), MP3), видео.
- Структурирование информации, размещение контента.
Все это пригодится не только для формирования будущего разработчика, но и вообще учит структурно мыслить.
Для взрослых, помимо непосредственно обучения по означенному выше списку, есть возможность создания полезных программ, таких как не тривиальные мультимедийные презентации, всевозможные тесты и т.п. На этом этапе знания программирования не требуется. Вместе с тем, само обучение написанию сценариев на языке Python в рамках среды Ren’Py очень эффективно.
Дистрибутив программы «весит» 19 Мб, на сайте русскоязычного сообщества можно найти множество интересных полезных рекомендаций и хитростей. Всего в Ren’Py уже создано около 180 игр.
ShiVa3D
Если говорить о сравнительно недорогих профессиональных вариантах кроссплатформенных движков/конструкторов, то нельзя обойти стороной популярный ShiVa3D. Что самое удивительное в данной ситуации, так это очень слабая активность в русскоязычном сегменте, хотя общее количество лицензиантов по всему миру у данной среды разработки составляет приличную цифру — 22 тыс. человек. Дело в том, что сам движок предоставляет возможности создания игр буквально под все популярные платформы, включая мобильные, при том, что самая дорогая его разновидность Advanced стоит 1500 евро. Есть и бесплатная PLE. Жанровых ограничений также фактически нет, при этом вы можете разрабатывать в ShiVa3D как 2D-игры, так и 3D.
С точки зрения визуализации, физики, динамики столкновений, работы с частицами, 3D, текстурами, освещением, тенями мы имеем самый современный комплект возможностей, языки программирования на выбор: C, C++, Objective-C, предусмотрено использование Lua. Есть специальный редактор, позволяющий создавать обширные 3D-миры. В начале февраля было объявлено об объединении ShiVa4D с популярным в области мобильных технологий комплектом разработки Airplay SDK от Ideaworks Labs, что еще больше расширило количество поддерживаемых платформ.
Упоминание о ShiVa3D часто можно встретить на зарубежных форумах разработчиков в силу того, что даже в бесплатном варианте на ее базе можно создавать законченные игры для iPhone (есть бесплатная лицензия, по которой можно делать даже платные приложения и игры для этой платформы).
Хит для новичков — Scirra Construct 2
В данном случае мы говорим о довольно серьезном конструкторе, который позволит начинающим без всякого программирования создавать целый спектр 2D-игр различных жанров в профессиональном качестве. Construct — это абсолютно бесплатное решение, при желании вы можете загрузить и исходный код для внесения изменений. На русскоязычном сайте есть большое количество понятной документации и работающих примеров.
Сама система представляет собой визуальный конструктор, в рамках которого вы формируете уровни, добавляете графические элементы, указываете условия. В целом, видно, что разработчики подошли к делу весьма ответственно, причем они явно в курсе того, как устроены профессиональные конструкторы, хорошо продумали эргономику. Что касается сценарных условий (событий), то они также задаются без всякого программирования. Construct включает в себя более 60 объектов и 20 встроенных поведений («объекты» и «поведения» — ключевые термины в рамках Construct). С помощью объектов вы создаете спрайты, управляете игрой, воспроизводите музыку, звуки, создаете эффекты частиц, и многое-многое другое. Каждому объекту можно присвоить определенную модель поведения. Например, добавив спрайту поведение Platform (Платформер) вы сразу же можете управлять им, бегая и прыгая по уровню. Вы легко можете менять скорость бега, силу прыжка и т.д., что позволяет полностью настроить поведение вашего персонажа или любого другого объекта в игре. Поведения экономят время, потому что они избавляют вас от необходимости повторно создавать события для одинаковых задач.
Для создания и обработки изображений имеется встроенный графический редактор. Плюс ко всему конструктор содержит базу из 50 визуальных эффектов, с помощью которых вы можете создавать искажения, смешивания, размытия, волновые и линзовые эффекты, маски и многое другое. Все это можно применять к определенным объектам или даже к целому уровню. Каждый эффект имеет гибкие настройки, что позволяет вам быстро и легко создавать красивые и впечатляющие спецэффекты.
Также реализованы эмуляция физики, есть система костной анимации для создания исключительно плавной анимации. Также весьма удобен отладчик для просмотра внутреннего состояния приложения во время игры. И стоит отметить наличие специальных объектов 3D Box и 3D Object, которые используются для создания игр с элементами 3D графики.
Если вы владеете программированием, то возможности конструктора становятся гораздо шире, а именно, при знании С++ можно модифицировать не только сам движок, но и писать плагины для него. Все модели поведения описаны в специальных сценариях на языке Python. Зная его, вы можете добавлять свои варианты. И, наконец, спектр визуальных эффектов можно расширить при условии знания HLSL.
Scirra Construct 2 — это, пожалуй, одно из самых интересных решений для начала 2011 года, рекомендую обратить пристальное внимание, особенно начинающим. В целом, можно получить очень хорошие качественные продукты, создавать казуальные игры, какие в большом количестве сейчас продаются в интернете. Единственный недостаток Construct состоит в том, что он базируется на DirectX 9, другими словами, вы можете создавать игры только для платформы РС.
Подытожим
В профессиональном сегменте среди движков/конструкторов сейчас происходит весьма интересная коллаборация с другими профессиональными секторами, то есть в таких средах уже моделируют, создают приложения, а иногда и вовсе сайты. Их используют в кино и на телевидении. Это очень интересный поворот событий.
А говоря о теме, которую мы подняли в подразделе «Из юмора», можно сказать, что ничего веселого на самом деле в сложившейся ситуации нет. Очень многое упирается в интеллектуальные возможности той или иной команды разработчиков. Если говорить о дорогих движках, то обычно они поставляются с уже готовыми шаблонами-примерами в различных игровых жанрах, которыми часто и пользуются в качестве основного руководства к действию. Другими словами, игры просто собираются по шаблонам, и основное отличие между ними — это небольшие расхождения в сценариях и работа художников/моделеров. То есть, по существу, только «косметика».
Именно поэтому сейчас и интересен «средний» пласт, который использует в качестве основы знаменитые игры «золотого периода» 90-х, и в нем еще не так много шаблонов. Недавно даже появилась новость о том, что собираются реинкарнировать NetStorm. Вот здесь происходят интересные события.
Что касается игр ААА-класса, к сожалению, в этом сегменте уже фактически не производится интеллектуально интересных глобальных продуктов. Ведь, что произошло с «Готикой»? Люди в индустрии так обленились, что похоронили очень мощный проект, выпустив откровенную халтуру. Но это для пользователей все выглядит именно так. А внутри индустрии происходят другие процессы. Например, увод Gothic от ее основных разработчиков сыграл на руку фирме Trinity, на движке которой Vision Engine сделали четвертую часть. Название игры послужило великолепной рекламой — дело в том, что профессиональных движков сейчас чуть меньше десятка, и все они примерно равны по возможностям. Поэтому происходит конкуренция на уровне имен проектов. Интерес к Trinity был проявлен огромный, в результате в прошлом году руководство этой компании даже подняло зарплату своим работникам… в 10 раз. За фирму можно порадоваться, а вот за игровой сегмент — нет.
Перепечатка материалов или их фрагментов возможна только с согласия автора
|