Создание компьютерных игр с нуля. Как создать игру самому? Этапы создания игры. Создание Игр - Развлечение

Восстановление

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

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

Этапы создания компьютерной игры

Существует семь этапов создания игры, которые помогут сделать лаконичный и законченный продукт:

  • Создание концепта . На этом первом шаге команда придумывает концепцию игры, и проводит начальную проработку игрового дизайна.
  • Разработка прототипа . Важный этап проектирования любой игры – это создание прототипа. То, что хорошо выглядит «на бумаге», совершенно не обязательно будет интересно в реальности. Прототип реализуется для оценки основного игрового процесса, проверки различных гипотез, проведения тестов игровых механик, для проверки ключевых технических моментов.
  • Получение минимального результата . Под минимальным результатом подразумевается несколько, либо даже один полноценный уровень игры, в котором полностью реализован гемплей, графика и прочие составляющие. Необходим он для того чтобы дать оценку проделанной работе и исправить ошибки.
  • Закрытое бета-тестирование . Команде специалистов дают пройти игру, и они в свою очередь находя какие-либо баги и глюки, оценивают все составляющие игры и прочее.
  • Открытое бета-тестирование существует для реальных игроков, которые заинтересовались в проекте. Принять участие в открытом бета-тесте, может каждый игрок, который предварительно прошел регистрацию. На этом этапе геймеры высказывают свои пожелания, оценивают игру и ищут уязвимые места.
  • Релиз . Компания-разработчик презентует свой новый проект. Как правило, делается это на большой игровой конференции либо на закрытом показе, куда приглашаются журналисты и геймеры.
  • Продажа и поддержка своего продукта. Вот и завершающий этап. Продукт поступает на полки магазинов, а для того, чтобы его продвинуть необходимо придумать оригинальную рекламную кампанию, а также выпускать дополнительные продукты для долгосрочного поддержания интереса к игре (например, уникальные игровые наборы, специальные издания и прочее).

Языки программирования для создания игр

Для того чтобы создать крупный игровой проект необходимо пользоваться языком программирования ААА. Но, как правило, ААА – это лишь основополагающее “тело”, а для создания поистине интересных вещей потребуется несколько языков (например, Python, С++ либо SQL, которые являются более сложными и изучаются для создания большого открытого мира).

" itemprop="image">

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

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

Слишком много людей, стремясь сделать свою первую игру, с головой погружались в движок и забрасывали идею, так как это «слишком сложно», «я устал», «я не вижу прогресса». На самом деле – это просто набор глупых оправданий, которые появляются из-за «сбитого прицела», то есть желания сразу делать игры крупного калибра, вроде Ведьмака или Final Fantasy.

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

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

Главная задача состоит в создании продукта, в который вы сами сможете поиграть. Плевать, если это линейный платформер, выполненный в двух цветах, и его прохождение занимает 7 минут. Вы его сделали, вы не пали духом, не решили всё бросить, что уже делает вас лучше, вы не из тех кто отчаялся и опустил руки!

Дайте маме, брату, друзьям, кому-угодно в неё сыграть. Они будут критиковать, ведь привыкли воспринимать игры как массивные проекты. Не обращайте внимания, ведь, во-первых: вы сами создали свою первую игру, во-вторых: в следующий раз вы сделаете её быстрее и лучше, и, в-третьих, скоро вы добьётесь того уровня мастерства, что все они сами будут просить вас дать им поиграть.

Ваша игра должна отражать ваши навыки. Всё нужно делать последовательно: появилась идея – проверяете возможность её реализации – если возможности нет, пытаетесь научиться – получив навык, реализовываете идею. И так нужно делать каждый раз. Со временем, загляните в Asset Store, возможно там уже есть фрагмент, над которым вы горбатитесь несколько суток.

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

Сегодня интернет переполнен различными туториалами, обучающими видео и бесплатным программным обеспечением. Всё это позволяет любому, у кого есть много свободного времени и идея, создать собственную компьютерную игру. Однако, необходимо также иметь чёткое представление о самом процессе и его последовательности.

Какую игру сделать?


Скорее всего у человека, интересующегося «Как сделать игру самому?» уже есть идея. Чаще всего это какая-то модификация одной из игр, в которую он играл. Может быть вашей любимой игре чего-то не достает и вы решили это добавить (задумайтесь есть ли у вашей игры возможности для моддинга: встроенный редактор или MOD-tool).

Например, жанр MOBA-игр был создан в редакторе WarCraft 3 (популярная ныне Dota — появилась именно благодаря широким возможностям редактора).

В любом случае — начальной точкой будет идея. Именно с нее и следует начать.

Идея

Но на всякий случай, если вы раздумываете «Какую игру сделать?» — статья поможет вам с поиском идеи.

Геймплейная составляющая идеи вашей игры определит жанр игры и платформу.

Жанр и платформа будущей игры

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

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

Концепт

После того как у вас появились какие-то мысли — сядьте и опишите концепцию игры. Сначала это могут быть лишь тезисы, которые потом превратятся в логично изложенные мысли. Если же сделать это не удалось – пересмотрите свою идею и избавьтесь от противоречий.

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

Теперь к особенностям вашей игры. Скорее всего, масса экспериментаторов уже пробовали себя в вашем жанре, но всё равно нужно придумать что-то своё, иначе интерес к проекту будет отсутствовать. Вот небольшой пример:

Пример

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

План разработки

Чёткий план разработки – надёжная основа вашего проекта и надёжная основа вашего роста как разработчика игр

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

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

  1. Ваш план должен быть рассчитан на месяц, не более. Так что доверьтесь своей интуиции и начните с простого. Лучше закончить раньше, чем не уложиться в сроки.
  2. Как только вы поняли, что данный продукт не может вас ничему научить, ставьте его на полку и забывайте. Вы сможете проверить свои навыки, начав аналогичный проект с чистого листа.
  3. Даже самые лучшие разработчики стремятся стать ещё круче, так что, каждая новая игра должна начинаться с мысли «Я сделаю лучше, чем в прошлый раз».
  4. Не игнорируйте планирование. В разработке любого проекта случаются небольшие «форс-мажоры», и предугадать их практически невозможно, поэтому проще банально учесть затраты времени на их устранение в расписании. Запланировали 8 часов? Смело превращайте их в 12.
  5. Дизайн – одна из последних вещей о которых стоит думать начинающему разработчику игр. Ваша задача – «обрастать навыками», так что лучше потратьте выходные на внедрение нескольких новых механик (незнакомых вам прежде), чем на рисование.
  6. Разбейте свой план на несколько фрагментов. Достижение этих «контрольных точек» неплохо повышает мотивацию. Если вы не успеваете выполнять недельные требования – упростите общий план.
  7. Не ставьте себе слишком абстрактных задач. Вместо «Проработать персонажа», вписывайте «внедрить новые механики стрельбы» или «изменить внешний вид во время удара» — чётких целей достичь гораздо проще.
  8. Присылайте себе письма не электронную почту каждый понедельник. Они должны содержать всё действия, совершённые за прошлую неделю. Сравнив все письма за месяц, вы наглядно сможете увидеть прогресс.
  9. Тратьте как минимум час в неделю на то, чтобы играть в свой продукт. В конечном счёте, никто лучше вас не сделает ВАШУ игры.
  10. Проведя две недели без работы над проектом, вы будете растеряны и потеряете нить, что заставит начать всё сначала. Именно на этом моменте большинство людей опускают руки и забрасывают идею создания собственной игры.
  11. Убивать время на звук и создания атмосферы в своей ей первой же игре – невероятно бессмысленно. Главное: разработать геймплей, ведь существуют шедевры, состоящие из обычных движущихся пикселей.
  12. Если вы делаете что-то более часа, и у вас всё равно не выходит – обратитесь за помощью. Зачем неделю топтаться на месте из-за того, что вы постеснялись создать тему на форуме?
  13. Давайте другим попробовать вашу игру. Да, сразу же польётся критика, но не стоит обращать на неё внимания. Даже проекты ведущих студий часто поливают грязью, но это же не мешает им продолжать делать шедевры, верно?
  14. Вы не обладаете безграничными ресурсами – поэтому нужно ставить перед собой реальные, достижимые цели.
  15. Как только вы отполировали свою первую игру, сразу же найдите несколько новых идей и беритесь за свежий проект. Не забывайте применять то, чему вы научились раньше.
  16. Ознакомьтесь с .

Переходим к созданию оглавления. Как ни странно, сюжет здесь практически полностью игнорируется. Главное – прописать все аспекты игровой механики и объяснить принцип их работы. В основном, именно оглавление лежит в основе руководства к игре.

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

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

Выбор инструментария разработки


Движок – сердце вашей игры, подойдите к выбору ответственно, ознакомьтесь со статьей

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

Если давать крайне широкую классификацию, то движки можно поделить на два вида: для двухмерных проектов (GameMaker: Studio, RPG Maker XV) и для трёхмерных игр (Unity, Unreal Development Kit и Source)

Посмотрите несколько официальных видео-уроков и попробуйте сделать в движке что-то самостоятельно. Если данная задача показалась вам неподъёмной, попробуйте скооперироваться с программистом, некоторые ребята могут вдохновиться вашей идеей и помочь в её доработке.

Прототип

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

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

Эта фаза — шлифовка дизайна вашего геймплея. Фаза поиска и проб разных вариантов.

Графика и звук

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

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

Наконец, создайте несколько фрагментов игровой вселенной. Это концепты того, как выглядит уровень, или же как персонажи взаимодействуют вне игрового процесса. Пришла пора воплощать ваши идеи в жизнь!

Blender – простой и бесплатный редактор для создания трёхмерных моделей.
Photoshop незаменим для обработки двухмерных изображений, а также отлично справляется с текстурами.
net позволяет быстро создать пиксель-арт.
Звуки, наравне с графикой, создают ощущение атмосферности в вашей игре. К вашим услугам огромный набор готовых библиотек звуков для бесплатных программ, а недостающие мелодии можно записать и дома, главное - обзавестись микрофоном.

Доработка

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

Фаза тестирования

Получив предварительную версию игры (не путайте с прототипом), переходите к поиску багов и ошибок. Будет лучше, если их найдёте вы, а не потенциальные игроки в первый же день после релиза.

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

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

Релиз

Организуйте промо-кампанию: подогревайте интерес в социальных сетях, закажите обзоры игровым блоггерам, не забудьте и о сайте с форумом, ведь поклонникам нужно будет где-то собираться!
Выберите платформу для распространения. Вряд ли вы захотите сразу вкладываться в хостинги или выделенные сервера, поэтому обратите внимание на популярные площадки вроде Steam, GOG, Humble, Play Market и им подобные. Помните, что владельцы взымают определённый процент от стоимости, поэтому данный вопрос требует детального изучения.
Не забывайте о поддержке игры даже после релиза. Продолжайте фиксить баги, выпускать дополнительный контент или же сразу приступайте к сиквелу!

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

Многие могут в вас не верить. Чего уж там: наверняка, будет пара вечеров, когда вы будете хотеть всё забросить, но не стоит опускать руки. Помните: действительно хороший продукт требует массу времени, средств и ваших нервов.

P.S.

Если у вас возникли какие-то вопросы или нужна помощь — пишите в раздел форума , мне приходят уведомления — я всегда отвечу и помогу чем смогу.

Эта статья является первой в целом цикле материалов для тех, кто хочет стать создателем игр. Если вы молоды, амбициозны и полны идей, а руки чешутся сделать "убийцу GTA" или "MMORPG типа WoW, но круче", то вы нашли то, что искали - руководство новичка по созданию игр . Моя цель - дать читателю общее представление о том, как же всё-таки выглядит процесс создания игр и развеять те иллюзии, которые могли сложиться на этот счёт, чтобы в последствии вы смогли избежать ошибок, совершаемых многими. Как и в любом деле, половина успеха - это правильная подготовка, поэтому чем полнее вы с самого начала будете представлять себе всю картину - тем большего успеха сможете добиться.

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

1. Создание игр для начинающих






Начинающий Разработчик Игр - В Простонародии "Чайник"

Итак, после очередного вечера за вы подумали - а чем я хуже?.. Подумали и решили, что вот он, шанс на всеобщее признание - пора создавать игры своей мечты! Кажется, что в этом нет ничего сложного, но вы заблуждаетесь... серьёзно заблуждаетесь. С этого, пожалуй, мы и начнём.

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

Так уж сложилось, что самый первый этап является и самым привлекательным - это момент рождения идеи, её поверхностной проработки, мгновения творчества. В такие моменты можно часами нарезать круги по комнате, представляя, каким классным всё должно получиться и какого признания можно добиться, если воплотить новую идею в жизнь. Восхищение своим творческим гением может переполнить сосуд, и в таком случае оно потребует выхода - чаще всего незрелая идея выплёскивается на одном из тематических форумов, в теме с заголовком вида "Собираю команду для разработки игры, нужны все". Где успешно высмеивается более опытными товарищами по цеху, и, стоит признать, порой весьма справедливо.

Создание Игр - Развлечение?

К сожалению, это далеко не так. Даже если не касаться профессиональной работы в индустрии производства игр, то и любительский проект - это не развлечение в прямом смысле этого слова. Конечно, процесс работы над воплощением своих идей приносит определённое удовлетворение и удобен как средство самореализации, но... Как уже было сказано, самым приятным является момент рождения идеи и её проработка, но затем неизбежно наступают "трудовые будни" с их повторяющимися действиями, нудной кропотливой работой и тем, чем заниматься ну совсем не хочется (а так как создание игр - достаточно разноплановая работа, то такие вещи наверняка будут, особенно если вы работаете в одиночку). В итоге в таком болоте тонет мотивация, а вместе с ней - и желание заниматься своим проектом.

Будьте готовы к тому, что даже относительно небольшой игровой проект может отнять у вас не один месяц времени на его завершение. Подумайте - достаточно ли у вас мотивации, чтобы продолжать работать над воплощением своей идеи даже после того, как начальный азарт угаснет?.. Наверное, не ошибусь, если скажу, что доля проектов, не доведённых до конца и брошенных на разных этапах разработки, стремится к 99%... Вы ведь не хотите пополнить это число своей идеей, правда?

Типовой Портрет Начинающего Разработчика

Да простят меня те, кто узнает себя в этом описании - призываю не обижаться, а продолжить чтение. Сейчас мы попробуем нарисовать типовой портрет начинающего разработчика игр, чтобы лучше понять, с чем нам предстоит иметь дело. Итак, начинающий "игродел" - это чаще всего учащийся школы в возрасте 12-18 лет, внезапно загоревшийся идеей создания игр. Идея приходит спонтанно либо после какого-то толчка к вдохновению, вроде нового фильма или популярной игры. Как правило, сам он ничего не умеет в силу возраста, недостатка опыта и иных причин, поэтому хочет выступать в качестве "руководителя " и/или "сценариста ", "автора идей ". Соответственно, так как самостоятельно с такими навыками сделать ничего хотя бы отдалённое напоминающего игру, нельзя, то нужна "команда", которую данный генератор гениальных идей пытается собрать на одном из тематических форумов.

При ближайшем рассмотрении идея оказывается клоном чего-то популярного и известного, "но лучше". Так как представления о том, чего же, собственно, хочется, и как организовать продуктивную работу, нет, то в команду приглашаются все либо почти все. В итоге такая "команда" складывается из случайных людей, которые в течение недели-двух создают видимость бурного обсуждения "проЭкта", иногда даже что-то пытаются сделать (вроде 3D-модели из набора примитивов), но примерно через это же время былой энтузиазм сходит на "нет", у членов команды появляются неотложные дела/сессия/уроки/бабушка заболела и вся затея благополучно рассыпается как карточный домик. Знакомая картина?..

Разработка Игр - Профессия или Хобби?

Разработка игр для многих является просто хобби (т.е. увлечением), но некоторые люди связывают с индустрией разработки игр свою карьеру и становятся профессиональными разработчиками. Естественно, что вопрос о том, есть ли разница между любителем и профессионалом, не стоит - она есть и весьма существенна. В то же время некоторые любители имеют куда более высокий уровень, чем отдельные "профессионалы", так что сам факт принадлежности к одной из этих двух групп не является определяющим. Тем не менее, некоторый отпечаток он всё же накладывает.

Любитель , как правило, имеет иной источник дохода (в случае, если он уже достаточно взрослый человек), поэтому над ним не висит вопрос коммерческой успешности своего проекта. Аналогично для тех, кто учится в школе/ПТУ/ВУЗе - они могут работать над игрой в своё удовольствие, бросить в любой момент, реализовывать любые идеи и вообще испытывают гораздо больше свободы в своих действиях. С другой стороны, они не могут посвятить изучению инструментов и получению новых навыков достаточно времени, поэтому в постоянно меняющемся мире игр всегда серьёзно отстают технологически и качественно.

Профессионал  - он и в Африке профессионал. Он делает свою работу и получает за это деньги. Как правило, работать приходится над чужими идеями, и благо, если они кажутся интересными - но иногда всё равно приходится работать над тем, что тебе не нравится. Так как уровень мастерства является определяющим в профессиональной деятельности, то такому человеку приходится идти в ногу со временем - осваивать новые технологии, программы, приёмы, техники и т.д. Он может позволить себе посещать семинары, курсы повышения квалификации, тратить достаточно времени на книги и видеоуроки - словом, пребывать в постоянной гонке за право считаться специалистом своего дела.

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

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

  • Во-первых, чтобы быть успешным инди-разработчиком, необходимо всё же регулярно заниматься повышением своих способностей и улучшением навыков, посвящая достаточно времени самообразованию - двух выходных дней в неделю, которые можно посвятить себя делу, скорее всего будет недостаточно.
  • Во-вторых, вам придётся самостоятельно заниматься многими специфическими вещами, которые в крупной компании выполняли бы отдельные специалисты, а в любительском проекте можно было бы обойтись и без них. В-третьих, так как мастера-на-все-руки, которые одинаково хорошо могут справиться со всеми аспектами разработки игры (графика-дизайн-музыка-программная часть) во всём мире, наверное, считанное количество, то часть работы нужно будет передавать на исполнение фрилансерам либо искать единомышленников, готовых работать вместе с вами.
  • Ну и в-третьих - делая ставку на свой проект, вы вкладываете в него время, деньги (хотя первоначально можно обойтись без значительных вложений) и ожидаете получить какую-то отдачу. И тут всё зависит от вас - на что наработаете, то и заработаете. Проект может быть как удачным, так и неудачным.

Цена Идеи для Игры


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

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

Задумайтесь: когда в последний раз вы видели действительно оригинальную идею? "Аватар"? Нет - если разложить идею до уровня концепции, то всё просто: земляне из будущего добывают ресурсы на чужой планете, игнорируя интересы местного населения. Один из землян проникается сочувствием к аборигенам, становится частью их народа и возглавляет борьбу против захватчиков. Просто, не правда ли? Crysis? Классический шутер про элитного спецназовца с супер-способностями, которые ему даёт костюм, и пришельцами из космоса. World of Warcraft? Игра, действие которой происходит в богатой на события и предысторию вселенной, с высокой ролью сюжетной составляющей, разносторонними сложными взаимодействиями игроков и мощной экономической системой.

Во всех этих идеях самое ценное то, КАК они были реализованы. Даже самая простая идея, будучи воплощённой в жизнь на высоком, качественном уровне, с глубокой проработкой, может "выстрелить" и стать хитовой игрой/фильмом.

Таким образом мы приходим к выводу, что для начинающего разработчика вопрос "как" гораздо важнее вопроса "что". Очевидно, что идея создания MMORPG нового поколения (так называемый next-gen) абсолютно бесполезна для большинства разработчиков, так как в силу объективных причин они просто не могут реализовать её в каком бы то ни было виде.

Английский Язык для Разработчика Игр

Отдельного упоминания заслуживает вопрос изучения английского языка. Очевиден тот факт, что игровая индустрия в подавляющем большинстве своём использует английский язык как язык международного общения. Конечно, есть национальные рынки и их разработчики, которые говорят на своём языке (например, Россия и Япония), некоторые из них могут быть весьма крупными и даже огромными (Китай) - но это не отменяет того факта, что инструменты разработки, учебные материалы и документация почти всегда использует английский язык.

Я убеждён в том, что знание английского языка - это критический фактор , который оказывает огромное влияние на тот путь, который предстоит пройти, чтобы стать разработчиком игр. Даже с чисто практической точки зрения способность читать и понимать английские тексты - огромный козырь в борьбе за место под солнцем. Если вы откроете вакансии русских компаний-разработчиков, то в 90 % из них найдетё такой пункт, как "технический английский на уровне чтения и понимания".

Возьмём конкретный пример - 3D-графика. Текстовые и видеоуроки по 3D-графике на русском языке в большинстве своём сделаны любителями для любителей, лишь немногие из них учат чему-то, что можно назвать средним уровнем, и крайне малая часть - это действительно профессиональные и актуальные вещи. Иными словами, всё это - капля в море знаний.

Спрашивается - зачем довольствоваться каплей, если можно выпить море? Знание и понимание английского - это ваш ключ к огромному массиву полезной и актуальной информации, сам факт доступа к которой даст вам десять очков форы. Компании Digital Tutors и Gnomon Workshop имеют в своём активе тысячи часов обучающего видео по всем областям применения популярных 3D-пакетов, таких как Maya или 3DS Max. Англоязычные сайты кишат статьями о геймдеве, а на форумах могут подсказать решение сложных проблем - просто потому, что количество людей ТАМ несоизмеримо выше с количеством людей ЗДЕСЬ. Берите лучшее из двух миров!

Что делать? Учить языки - оно того стоит, даже если через год вы забросите геймдев. Как? Не спать на уроках в школе, записаться на курсы, использовать самоучители - путей много, было бы желание. Особое внимание стоит уделить лексике - вам совсем необязательно уметь говорить на этом языке, главное - уметь читать и понимать прочитанное. Уже после этого можно будет начать развивать навык восприятия английской речи на слух - и в этом могут помочь видеоуроки по 3D-графике, если вы художник, или аудиоуроки по английскому языку. Ещё раз повторюсь - по ту сторону языкового барьера огромный мир, полный информации. Не иметь к нему ключей - всё равно что учиться по черновику, когда рядом есть библиотека.

Сергей "Treidge" Данченко — автор блога , вольный 3D-художник и разработчик игр, веб-разработчик на Drupal и человек-оркестр с опытом в некоторых других областях. Личное кредо — "хочешь сделать что-нибудь хорошо, сделай это сам". В моменты особого вдохновения пишет стихи и играет в волейбол. Основные профессиональные инструменты — Autodesk Maya, Autodesk Mudbox и Adobe Photoshop. Без ума от индюков и попугаев. Спасибо за внимание, заходите снова!

  • 83413 просмотров

3/4 времени на свою идею, 1/4 на изучение языка - глядишь, и через пару месяцев уже можно будеть понимать написанное, а там и до свободного чтения не так уж далеко... Я вот конкретно движком Unity 3d интересовался, на русском видеоуроков или статей - крохи, а вот на английском - уже десятки часов по всем темам.

Хорошая статься, правда мне кажется эту тему можно раскрывать бесконечно. Я бы добавил обязательное условие, "любить читать" и искать тонны информации в интернете. Если что то найти человек и может в интернете, а вот осилить имеющуюся литературу допустим в 500 страниц, это уже может стать проблемой, а это я считаю основополагающий фактор, читать читать читать, и только потом делать делать делать.
Спасибо, буду читать вас еще:)

Согласен, эта тема была затронута краешком в абзаце про профессионалов. С учебными материалами и правда проблема - желающим доступны просто тонны книг и видеоуроков, чтобы перечитать и пересмотреть которые - не один год нужен. Часто срабатывает инстинкт хомячка - натаскать всего и побольше, и чтобы потом это всё добро лежало и покрывалось толстым слоем пыли (каюсь, тоже таким грешен). Кажется, что сам факт обладания таким объёмом информации делает тебя профессиональнее, но это далеко не так.

В общем, я бы сказал, что нужно читать И делать, и только тогда можно придти к успеху. Помню, в одном из видеоуроков инструктор напоминал - "Люди, вы - не растения! Вы не можете впитывать знания так же, как растения впитывают солнечный свет. Не просто смотрите, но и делайте, экспериментируйте, выходите за рамки того, что я вам показываю.". Очень правильное замечание сделал этот человек.

20 Ноя, 2011

Очень понравилась статья. Ещё узнал, что автор хочет свою 1-ю игру реализовать. Я рисовать не умею, но разрабатываю движки для игр на Android, Windows, Linux, Mac (при помощи Open Source & Cross Platform Framework LibGdx), знаю box2d, OpenGL. Раньше занимался движками для веба, но последние 2-а года изучаю Андроид платформу. Хочу также как и автор реализовать свою 1-ю игру и выпустить её на Андроид Маркете. Идея уже есть (на физику и логику, 2Д, вид сбоку, сейчас продумываю уровни), но она очень абстрактна ещё, как автор сказал (золотые слова) идею надо ещё реализовать и только тогда будет ясно принесёт она успех или нет;-) Если интересно, то пишите мне на почту... Успехов и Удачи!

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

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

Очень хорошо ваше наблюдение подчёркивает сайт:
https://sites.google.com/site/mysuperpupergame/

Просто сам пишу и понемногу продаю игры на Flash, очень много посещаю тематических сайтов и так смешно читать темы "собираю комманду", что взял и сделал этот сайт (под пиво), для того чтоб, на разных форумах давать ссылку на него.

Вдруг кто присоединиться:)

Для начала постарайтесь определить, к какому направлению у вас могут быть склонности. Может вам нравится рисовать, тогда создание графики - очевидный выбор. Либо же наоборот - рисовать вы не умеете, но сильны в математике и технических науках - тогда программирование может стать удачным выбором. Хотя всему этому можно научиться и не имея каких-то предрасположенностей, другое дело, что работа в "неправильном" направлении не будет доставлять никакого удовольствия и напротив, скорее будет в тягость. Для начинающих хорошо подойдут конструкторы игр типа Game Maker (самый известный). Начать можно с него, ну а далее по потребностям - нужна будет графика для игры, тогда стоит попробовать рисовать, нужны будут скрипты - вот вам и программирование. Главное - начинать с самого простого, типа Понга (это игра такая), арканоидов и т.д., и очень быстро вы сами сориентируетесь, что вам нужно и для чего. Как говорят в таких случаях - Интернет знает всё, нужно лишь поискать ©. Что бы вы не выбрали - в вашем распоряжении будет огромное количество образовательных ресурсов. Дерзайте .

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

11 Фев, 2012 10 Мар, 2012

Блог ну прям с меня списан практически.
С первой частью блога согласна на все 100%. Но вот по поводу иностранного языка, вот тут я "закипела".
Не все люди могут выучить английский язык или вообще любой другой иностранный язык. Не всем это дано. Получается, что если человек не знает английского языка, ему никогда не стать разработчиком игр или просто профессиональным программистом?!
Для того, чтобы выучить английский язык также нужны годы, нужны не только книги и учебники, самоуичтели и аудиоуроки по языку, но свободное время. А его вечно не хватает. По себе знаю, что пока учишь одно, другое забывается. Приходится снова возвращаться к началу. Повседневная жизнь такова, что часто приходится делать "привычную работу". Приходя домой с работы никаких сил уже на иностарнный язык не остается, даже при наличии огромного желания и мотивации! Усталость и нехватка времени сводит все усилия по изучению иностранного языка на нет. Доказано на собственном опыте!
Все же не согласна я с автором блога по поводу иностанного языка. Проблему обучающего материала очень легко решить, а именно переводить книги, газетные и журнальные статьи, и даже теже самые видеоуроки с американских сайтов на русский или любой другой язык. Зачем новичку тратить время на иностранный язык, когда есть другие люди, которые занимаются этим же самым переводом профессионально? Зачем вообще нужны тогда переводчики? Неужели ни в одной из американских крупных компаний по разработке игр нет переводчика? В жизни не поверю в это. К тому же если существуют коллективы, где сотрудники говорят на обоих языках, почему сразу не написать литературу, документацию, статью или видеокурс на двух или трех языках? Все дело в том, что этим надо кому-то заняться из команды разработчиков программного продуктиа, но никто не хочет. Вот в чем вопрос. Банальная лень!!! Трудно написать сразу два документа. Напишу стандартный на английском. А тому кому надо пусть сам мучается с переводом, тратит еще больше времени на поиск информации, прежде чем реально начнется обучаться тому, что ему нужно.

Эх, если бы всё было так просто... Отвечу по порядку.

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

Эта часть моей статьи написана как рекомендация прежде всего тем, кто серьёзно хочет связать свою жизнь с разработкой игр. Я каждый день сталкиваюсь с необходимостью читать и слушать на английском языке и каждый день ощущаю, насколько мне это помогает. И да, я уверен, что стать в полном смысле слова профессионалом без знания языка крайне сложно, причём себя профессионалом я не считаю. Конечно, найдётся достаточно людей из этой области, которые языком не владеют и тем не менее чего-то достигли, но в моём представлении профессионал - это тот человек, который в совершенстве владеет своей профессией, идёт на гребне прогресса, владеет самыми свежими технологиями и получает информацию о них из первых рук, то есть от создателей. Которые в 90 % случаев всю документацию и прочие материалы пишут на английском языке как самом распространённом языке и языке международного общения. Специалист без знания языка получит доступ к таким материалам в лучшем случае с большой задержкой, либо же из третьих рук, а вероятнее всего - вообще никогда. Мне бы не хотелось попасть на приём к стоматологу, который из-за языкового барьера будет выбивать кариес зубилом и молотком, в то время как в соседней стране для этих целей давно используют лазеры.

Тем не менее, проблема перевода любых материалов действительно может быть решена, и я уверен - будет решена в ближайшие годы, может быть 10-15 лет. С развитием информационных технологий любой перевод будет осуществляться на 100 % точно и "на лету", а профессия переводчика со временем канет в Лету. Но пока такие системы не созданы - приходится мириться с текущей ситуацией, ведь простого её решения пока нет.

Переводить статьи, книги или уроки, безусловно, можно, но вот только кто будет этим заниматься? Профессиональным переводчикам, как и любым другим специалистам, нужно платить, и платить много. Заниматься переводом узкоспециализированной литературы просто так никто не будет, разве что энтузиасты. Но много ли их, этих энтузиастов? Капля в море, причём такая общественно-полезная нагрузка очень быстро им надоедает. И я категорически не согласен с тем, что новичкам не нужно тратить время на изучение языка. Любителям - возможно, но будущим профессионалам - нет.

Знание двух-трёх иностранных языков - это серьёзная инвестиция в своё будущее, преимущество в любой конкурентной борьбе, необходимый навык, а не каприз. В XXI веке, когда мир глобализуется и уменьшается, знать только свой родной язык - значит сознательно ограничивать свою свободу, в первую очередь свободу получения информации.

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

Это - их бизнес. Никто не будет заниматься тратой ресурсов на адаптацию своего продукта (перевод) к рынку, на котором нельзя продать достаточное количество копий своего продукта. В первую очередь переводы получают те языки, доля рынка которых самая большая. В случае с игровыми движками это обычно китайский язык, к которому постепенно подбирается корейский. В сумме эти три языка, наверное, покрывают до 80 % рынка. Русскоязычные покупатели же могут составлять 2-3 % от общего объёма - вот вам и причина, по которой существует дефицит учебников и курсов на русском, производителям просто не выгодно заниматься этим.

И так во всём - производители чего угодно в первую очередь стремятся удовлетворить потребности большинства, и это большинство может принимать разные формы. Например, на корейском языке говорят в 2 раза меньше людей, чем на русском, однако рынок игровых движков там на порядок больше, чем в России. Поэтому документация на корейском для движка UDK есть, а на русском - нет.

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

10 Мар, 2012

Ух какой ответ большой.
Подустала я сегодня, мысли бегают кругом да и глазки болят... Ай ладно.

На "данную тему" можно рассуждать неограниченное количество времени. В России с обучающим материалом действительно напряг. В малоразвитых городах (таком в котором я живу), специальная литература это большая редкость. В основном на полках стоят однотипные книги. У всех книг практическ одинаковое название, единсвенное, что их отличает это картинка на обложке и имя автора. По внутреннему содержанию книги абсолютно идентичны! С таким предложением многому не научишься.

Конечно для саморазвития знать другой язык нужно, пусть даже немного, но лично в моем случае это "гиблое дело". Чтобы выучить, запонить и потом "воспроизводить" английские слова я трачу не один день. Перевод предпочитаю делать вручную старым дедовским методом "словарь"+"ручка"+"бумага". И этот дедовский метод крайне медленен. В день не более одного, двух абзацев. Каждое слово переводишь! А потом еще грамотно собрать переведенные слова в "текст имеющий смысл". Очень тяжелая работенка и таким темпом одну страницу неделю переводить можно:-). И как далеко на этом можно "уехать" в моем случае? Это ни к чему не приводит как правило.
P. S. Переводчики (программы) работают по тому же принципу. Сплошной набор переводов слов, причем не самый точный.

Совсем другое дело, когда находишь в Сети (так как другого источника нет) книгу в электронном виде или учебник в котором все расписано с самого начала, по полочкам разложено, простым и доходчивым языком рассказано. Напрмер книга, которую я сейчас читаю "Как написать игру для ZX Spectrum". Очень интересная и понятная. На русском. Единственное, на что я потратила время, это на поиск эмуляторов операционной системы Спейси и на редакторы для создания игр. Вот на этом реально можно научиться, сразу! Все понятно и время экономит и необходимые, пусть самые базовое знания новичок получит.

Если занимать "изучением" английского языка, то походу поступления информации. Пусть даже методом "тыка" :-|. А иначе можно вообще никогда не достигнуть желаемого результата.

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

В идеале, самым лучшим обучением, является создание самой простой игрушки или программы, пусть не взрачной "сырой" . Но с самым наиподробнейшим, пошаговым описанием. С нуля. Пусть кусками, какими-то отрывками небольшими. Но в конце, получить хоть самую дохленькую игрушку. Конечный результат. Но ведь не в каждой книге описываются проекты! Никто не станет тратить на это время и сил.

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

Возможно и можно . Однако учитывайте тот факт, что поисковики не поощряют копирование контента, и пользы такому сайту от публикации всех статей не будет. Относительно безопасно можно опубликовать у себя одну-две статьи (например, первую с оглавлением), и это с точки зрения поисковиков может сойти за цитирование. Бо льшее количество может повлечь за собой некоторые санкции со стороны поисковиков.

Прошу прощения, не прописал ник ранее. Относительно поисковиков: Да, мне знаком такой момент. Тем не менее как я уже замечал - огромное количество сайтов находясь во все тех же поисковиках имеют у себя большое количество материала. Кроме того есть еще и такие общедоступные источники которые, по счету большому, не супротив копирования. Например, Википедия. Но по такой логике получается что и статьи с Википедии в той же мере не поощряются поисковиками?

Да, не поощряется, причём в случае с Википедией это даже более показательно, чем с другими сайтами и их контентом, т.к. содержание сверхпопулярной Википедии гораздо проще использовать в качестве эталона, с которым будет сравниваться контент. Тут логика поисковика очень простая. Ведь если контент общедоступен - зачем его копировать? Правильнее указать ссылку на источник, который поддерживается в актуальном состоянии (т.е. энциклопедические статьи могут часто исправляться и дополняться). Тот же Google, например, заинтересован только в уникальном контенте, т.е. таком, которого нигде больше нет. Конечно, никто не может запретить сделать "зеркало" Википедии и выложить его в интернете, но поисковикам такой сайт в принципе не будет интересен, т.к. им придётся тратить ресурсы и время на индексацию того, что и так уже проиндексировано. Вполне естественно, что зеркалирование контента (копирование) не поощряется, а в некоторых случаях и вовсе наказывается.

Ясно. По большому счету с моей стороны вопрос копирования - это не "злостное копирование всего и вся". Скажем так, существует некоторый материал который, в принципе, переписать можно, но вряд ли получится сильно лучше. "Зачем придумывать велосипед?" так сказать. Уникальные статьи и контент имеют место быть, но... Несколько статей было - таки скопировано.

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

Для меня также все же остается вопрос в том что несмотря на, как вы сказали, "зеркалки" огромная масса сайтов копирует, к примеру. новость друг друга вплоть до текста. Притом сами сайты на первых строчках и. что интересно. один и тот же сайт может по несколько (а порой и несколько десятков раз) фигурировать в поиске и не очень - то заметно что подобные сайты как - либо "наказываются".

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

Хочешь научиться создавать игры,
но не знаешь с чего начать?
Прочитай текст ниже и уже сегодня ты начнешь делать свою первую игру!

Приветствую тебя начинающий разработчик игр!

Если ты заглянул на этот сайт, значит ты хочешь создавать игры. Причём не через много лет, а желательно прямо сейчас.

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

Кто я такой?

Меня зовут Артём Кашеваров. Я профессиональный программист, дизайнер, и автор десятка проектов посвящённых созданию игр. Ко всему прочему, я обучаю всех желающих созданию игр.

Итак, ты принял решение всерьёз взяться за осуществление своей давней мечты - создавать видеоигры.

Поделюсь с вами опытом: пару лет назад я и представить не мог что создавать игры в наше время будет НАСТОЛЬКО просто. Как программист с 6 летним стажем, я могу сказать вам, что создание даже простейших 2D игр было очень нелёгким делом. Только одному мне приходилось тратить невероятное количество мысленных усилий и времени(около недели) чтобы всего лишь заставить главного героя двигаться по экрану. Вы можете себе представить сколько сил уходило на целую игру?

Сегодня многие люди создают игры буквально за пару вечеров! Именно этому я и хочу тебя научить!

При этом тебе совсем не понадобятся какие-либо специфические знания - достаточно твоего желания и немного упорства.

Как создавать игры без лишних заморочек?

Что же позволяет сегодня делать игры гораздо легче и быстрее?

Это программа Game Maker. Принцип её действия прост - в любой игре есть повторяющиеся программные элементы. Например - столкновение объектов, отображение анимации, воспроизведение музыки и аудио эффектов, изменяемые раунды игры и прочее. Так вот эта программа позволяет не тратить время на реализацию всех этих процессов. Всё что от нас требуется - это связать все эти процессы так как нам нравится. Например, при столкновении объектов, мы можем сделать так, чтобы воспроизводился какой либо звук или, например, создавался новый объект, а при желании можем сделать и то и другое.

Создавать игры таким способом - увлекательное, ни с чем не сравнимое удовольствие!

Взгляните, какого уровня игры можно делать на Game Maker:

Dustforce

Это аркадная игра с великолепной графикой и геймплеем. Данная игра - коммерческий проект создатели которого профессиональная студия разработки игр.


Название: Dustforce

Жанр: Аркада

Разработчики:
Art/game design/sound: Woodley Nye
Program/design: Lexie Dostal
Music: robotscience.bandcamp.com

Мультиплеер: нет

Похожесть: Mirror"s Edge 2D

Теперь, я думаю ты понял, что возможностей Game Maker тебе хватит с лихвой. На данный момент это лучшая среда разработки игр для начинающих игроделов. И скоро ты в этом убедишься сам.

Ты хочешь быстро и дёшево научиться создавать игры?
Возможно ли это?

Да. И я знаю как.

Увы, созданию игр ни в одном ВУЗе нашей страны не учат. И что ещё ужаснее - это то, что даже никакой толковой литературы по созданию игр нет.

Что же получается? Что созданию игр никак не научиться?

Всего пару лет назад научиться создавать игры и вправду было большой проблемой.

Но сейчас ситуация изменилась! После выхода видеосамоучителя по созданию игр:


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

Выглядит это всё до нельзя просто. Вы смотрите ролик с обучающими видеоуроками по Game Maker в компьютер. Запускаете программу Game Maker и просто повторяете всё то, что происходит на экране, тем самым перенимая мой опыт и знания.

Данный курс я создавал на протяжении 9 месяцев! Кажды день по 9-12 часов кропотливой работы. Многое я переделывал. Многое начинал заново. Я хотел чтобы этот курс смог научить вас созданию игр настолько легко и быстро насколько это возможно! Будьте уверены - я своего добился!

Для кого предназначен этот курс?

Данный курс создан для тех, кто как и я имеет огромное желание, во чтобы то ни стало, создавать компьютерные игры! Для тех кто считает игры - высшей формой коллективного искусства! Этот курс для людей творческих, для тех кто постоянно играет в игры и многому научился из них. Если у вас есть еще и какие-либо идеи по созданию своей игры - это вообще ЗДОРОВО! Можете смело заказывать курс - с его помощью ваши задумки станут реальностью!

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

Со всеми остальными же мы будем работать и учиться делать свои первые игры!

В чем ошибка 92 % процентов начинающих?

В настоящее время хороших уроков по созданию игр почти не существует. Именно ЭТО и ставит в тупик начинающих игроделов. Многие приходят к выводу, что для того чтобы делать игры нужно сначала освоить программирование, научиться рисовать, освоить профессию дизайнера и менеджера. И только тогда делать игры.

Пускай ваша первая игра будет не слишком крутой, но она будет ВАША!

Это бесспорно подтолкнёт вас на новые свершения! И дальше Вы будете работать только лучше! Маленькие победы ОЧЕНЬ важны для вас или для вашей команды, если Вы работаете вместе. Они позволяют быстро увидеть ошибки и прочие проблемы.

А возможно ли создавать игры в одиночку? - Именно этот вопрос сейчас вертится у вас в голове.

Конечно это возможно! Но, скорее всего, у вас появится такая работа, которую Вы по каким-то причинам сделать не можете. В таких случаях я нанимал за 500 руб. человека, который справлялся с этой работой, а потом ещё долго помогал проекту на чистом энтузиазме!

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

Как нанимать людей и где их искать? - об этом я обязательно расскажу вам в видеокурсе.

Из чего состоит простейшая компьютерная игра?

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

    Графическое оформление (спрайты и прочее)

    Движок игры (программная часть, которая будет взаимодействовать с игроком)

    Самый элементарный гейм дизайн (это задумка, как в игре будет всё устроено)

Как видите, не так уж и много. На практике для этого требуется 1-2 человека. И, несмотря на то, что мы убрали из этого сценарную и звуковую составляющую игры, мы можем и ещё кое-что упростить.

Дело в том, что графическое оформление можно позаимствовать у других игр (если Вы не продаете такую игру, то закон Вы не нарушаете). Гейм дизайн можно также взять из каких-нибудь старых игр времён Dendy или Sega. И пускай для начала у вас будет только один раунд. Самое сложное - программная часть, которую я вас научу делать на раз-два в Видеокурсе "Создание Компьютерных Игр в Видеоформате" .

Причём программную часть Вы освоите без программирования!

В этом и прелесть Game Maker!

В результате вам остаётся только сконцентрироваться на деталях игры, игровой механике, выверенном балансе и прочих интересных вещах. В каком-то смысле создание игры в Game Maker - само по себе напоминает игровой процесс. Это невероятно интересно!

Что в себе содержит курс?

Курс состоит из 3-х частей

В первых двух частях располагаются видеоуроки.

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

Также к курсу прилагается подробная инструкция для продуктивной работы с ним.

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

Файловая часть - Файловые материалы - набор программ, заготовок, проектов, примеров, спрайтов, и прочие полезные файлы Вы найдёте здесь.

Инструкция к курсу - в инструкции подробно описывается, как применять курс, чтобы эффект от видеоуроков был максимальным и не забылся при первой же возможности.

Каков план курса?

Сам видеокурс поделён на главы, в каждой из которых мы решаем самые насущные проблемы, которые могут встретиться на вашем пути. Некоторые главы разделены на подглавы.

А теперь подумайте сколько денег Вы сможете съэкономить, занимаясь дома самостоятельно в удобное для вас время по этому курсу.

Что конкретно ты получишь после прохождения курса?

Ты научишься создавать ИГРЫ!
Ты поймёшь основные принципы создания игр!
Ты сделаешь свою первую игру!
Ты станешь разработчиком игр!
Ты научишься делать игры в разных жанрах: экшены, стратегии, RPG, симуляторы и пр.!
Ты будешь заниматься тем, что ты любишь больше всего - играми!
Ты будешь создателем целых миров, захватывающих историй, и интересных персонажей.

Игорь Стликов

г. Санкт-Петербург

"Уже запустили свой первый проект! Теперь намечаем второй".

Здарова, Артём!

Спасибо за курс. Честно сказать, я ещё до изучения курса много читал про создание игр. Только всё время меня отпугивала мысль, что без знаний программиста созданием игр не заняться. У меня со школы с программированием туго. Да только ТАКИЕ порой идеи создания игр появлялись, что не смог отказать себе приобрести твой курс, и не пожалел.

Сейчас я и мой друг успешно завершили свой первый проект. Теперь намечаем второй. Я в роли гейм дизайнера, а он скрипты пишет. Жаль только времени маловато - работа, семья. Но пока что время на хобби нахожу, кто знает может это перерастёт во что-то большее.

Вообще результатами я более чем доволен, это был очень мощный скачёк. Уроки твои творят чудеса. Всем, кто читает мой отзыв, скажу - можете не раздумывать, если интересует тема создания видеоигр, заказывайте смело - узнаете много нового и уж точно не расстанетесь с курсами!

Искренне желаю удачи тебе, Артём!

P.S. Извини, что так поздно написал, был занят изучением курса и проектом.

Вот, что Вы получаете, оформив заказ:

Во-первых , Вы получаете более 9 часов видеороликов на двух DVD с рекомендациями, примерами создания видеоигр, демонстрациями эффектов. Эту информацию Вы получите в реальном времени от меня на видео.

Во-вторых , вам не нужно будет мотаться по интернету в поисках нужной программы и разного рода графических заготовок.

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

    1 . Основное, чему Вы научитесь - Вы научитесь делать игры. Спустя какое-то время Вы будете в состоянии создавать собственные игры с командой или в одиночку. Причём для этого вовсе не обязательно куда-то ходить - Вы научитесь всему сами, с помощью видео!

    2 . Если у вас уже есть опыт в создании игр, то Вы существенно повысите свое мастерство, используя программу Game Maker и все её возможности, которых у неё имеется в большом достатке. Ваши навыки создания игр станут ещё профессиональнее и уникальнее. Появится простор для импровизаций, что особо ценно для казуальных игр. Вы будете более уверенно заниматься любимым делом, а ваши друзья отметят ваши умения.

    3 . Вы будете уже не просто человеком, который бесполезно тратит на игры уйму своего времени, а человеком-творцом. Увлекательные миры и множество уникальных характеров - всё это будет вам подвластно.

    4 . Вы сможете поразить всех друзей достигнутыми результатами.

    Покажи мне результат!

    Какого уровня игру вы сможете сделать пойдя курс? Как минимум это будут игры уровня sega, и Dendy. А максимум ограничен только вашим трудолюбием и желанием создать нечто потрясающее!

    Судите сами на ваших глазах в одном из видео всего за час я сделаю основной движок игры DUNE 2. Вот скриншот:

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

    Ваш результат зависит от того сколько времени вы на него потратите. Если за час можно сделать игру такого уровня, то за пару месяцев можно сделать нечто действительно впечатляющее!

    Если Вы сделаете заказ самоучителя прямо сейчас, то получите от меня два этих подарка:

    Подарок № 2:
    Видеокурс "Как озвучить вашу игру в домашних условиях"

    Ценность - 848 рублей

    Из данного видеокурса Вы узнаете:

    Как правильно настраивать компьютер, программы и микрофон для записи звуков.

    Внимание!!! Если Вы сделаете заказ позже, чем через час,

    то Вы НЕ получите эти бонусы.

    Валентин Лапонин

    г. Новосибирск

    Здравствуйте! Меня зовут Валентин. Хотел сказать огромное спасибо за ваш видеокурс. Если честно, я даже не ожидал, что в нём будет содержаться такой большой объём полезной информации.

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

    Да... в Интернете можно найти немало информации, но, в основном она не конструктивна, не последовательна... порой даже не достоверна. Из вашего видеокурса многое стало понятно.

    Кроме всего написанного в рекламе - в курсе ещё оказалось с десяток полезных видеоматериалов, которых нет в оглавлении, уж этого я никак не ожидал. Видно, что автор старался сделать нечто нужное и полезное. И, похоже, добавил эти уроки в самый последний момент. Рекомендую!

    Ещё раз спасибо! Успехов в вашем деле!

    Как может выглядеть ваша жизнь через 5 лет?

    Утро. Бодрящий аромат любимого кофе.

    Сегодня много приятной работы. Энтузиазм так и хлещет, хочется взяться за дело прямо сейчас! Да только офис находится в другой части города. Тем не менее вы чувствуете себя просто замечательно по пути на работу в своём уютном авто. Пусть ваш автомобиль не самый дорогой и шикарный, но всё таки он ваш. Да и кому в конце концов будет неудобно в кожаном салоне AUDI A7 ? От мысли что каждую копейку на него вы заработали своими руками - становится как-то приятно.

    Прошло уже 4 года с тех пор как вы открыли свой первый офис, наняли первого программиста, создали первый дизайн документ. Сейчас штат сотрудников уже перевалил отметку в 11 человек! Но главные свершения ещё впереди! Ещё много новых идей ждут своей реализации: новые платформы и технологии, последний проект вот-вот уйдет "на золото", остались лишь мелкие штрихи! Как-же всё это интересно!

    Работы конечно хватает, но тем не менее силами вашей маленькой компании уже была выпущена не одна компьютерная игра. Это греет душу! Доходы компании хоть и не бьют мировых рекордов, но на жизнь более чем хватает, даже в рестораны удаётся выбраться 2-3 раза в неделю. Словом никто из вашей команды на зарплату еще не жаловался. И это естественно - главное для них далеко не деньги, а создание игр! Безусловно эти люди понимают ваше стремление к созданию игр!

    При входе в офис вдруг вашу голову посетила мысль - "А с чего вообще это всё начиналось? Как так получилось что я владею бизнесом по производству компьютерных игр?". А началось всё с какого-то видеокурса, кажется он назывался "Создание игр с нуля в видеоформате", имя автора уже трудно вспомнить, зато в голове хорошо отложилась та лёгкость с которой он учил вас создавать свои первые видеоигры!

    Если Вам кажется, что все это звучит слишком хорошо, то хочу Вас отрезвить...

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

    Но если Вы согласитесь работать и применять описанные техники и практиковать упражнения, действовать, а не сидеть сложа руки, вас ждут кардинальные изменения.

    Вы платите 2450 рублей за 7 лет бесценного опыта. 350 рублей за год. 30 рублей за месяц

    Много ли это?

    На самом деле это даже не цена курса и не сумма которую Вы заплатите за курс обучения.

    Это цена которую Вы готовы отдать для достижения вашей мечты - создавать игры! Уже через неделю обучения Вы начнёте создание своего первого серьёзного проекта. А через какое-то время у вас будет готовая игра созданием которой Вы сможете гордиться!

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

    Несмотря на это, выбор остаётся за вами - Вы можете сходить один раз в кафе или вместо этого подарить себе замечательный подарок, который точно не останется лежать на полке!

    Сколько стоит обучиться созданию игр у моих конкурентов?

    Для чистоты выбора приведу цены на обучение самой близкой професии относящейся к созданю игр - профессии программиста:

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

    100% безрисковая сделка!

    Если Вы всё еще сомневаетесь, то я предоставляю Вам 100% гарантию:

    Думаю так будет справедливо.

    Вот еще несколько скриншотов того что происходит на экране во время обучения:

    Смогу ли я в полной мере воспользоваться вашими курсами, ведь я пенсионер (как вариант: студент, ученик старших классов)?

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

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

    Материалы курсов подаются по принципу "от простого к сложному". Изучение Вы начинаете с очень простых и, я бы даже сказал - элементарных вещей. И уже затем мы начинаем переходить к более сложным вещам. Новичок проходит все ступени обучения постепенно, шаг за шагом. Более опытные - могут переходить сразу к тем темам, которые их больше всего интересуют. Словом, было бы желание, а разобраться в материале и освоить курсы, сможет любой, будь то пенсионер или школьник...

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

    Сказка для тех, кому нужно подумать

    Жил-был молодой парень. Когда ему исполнилось 18 лет, он пошёл работать батраком к хозяину.

    Однажды он спас из реки утопающую девушку. Она оказалась феей. И вот она говорит ему: «ты мне спас жизнь - загадывай любое желание».

    Парень с детства мечтал путешествовать. Он сказал фее: «подари мне сапоги-скороходы. С ними я увижу весь Мир!»

    Фея дала ему сапоги. Парень подумал: «чтобы путешествовать, нужны деньги. Сначала заработаю, потом отправлюсь в путь». И он стал усердно работать.

    Вскоре он прослыл самым лучшим работником. Хозяин подумал: «какой трудолюбивый и бережливый юноша!» и предложил ему жениться на своей дочке.

    Парень обрадовался и решил: «Хорошо, сначала женюсь, потом буду путешествовать».

    Сыграли свадьбу. Родились дети. Он думал «вот дети вырастут, тогда отправлюсь путешествовать».

    Дети выросли, женились, родили внуков. Он думал «вот сейчас, немного с внуками понянчусь и отправлюсь в путешествие».

    Так шло время. Однажды внуки залезли играть на чердак и увидели: дедушка сидит в кресле, на нём надеты сапоги-скороходы, а сам он спит вечным сном.

    Ты хочешь подумать ещё?

    Или ты всё-таки хочешь создавать игры?

    Леонид Бубнов

    г. Иркутск

    "Вот уж не думал что создание игр - это так просто!"

    Здравствуй, Артём!

    Это Леонид Бубнов.

    Я получил видеокурс сегодня. Я в восторге!

    Посмотрел пару роликов, то, что нужно!! Все подробно объясняешь, молодец.

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

    До связи. Леонид.

    P.P.S. Тем, кто боится быть кинутым, а это, к сожалению, очень распространённый порядок расчётов в Рунете, спешу сообщить, что все продажи с моих сайтов носят полностью законный характер .

    Я официально зарегистрирован как индивидуальный предприниматель (ИП Кашеваров А.Д., ОГРН 305026522400038), поэтому обязан исправно платить налоги и соблюдать все права потребителей. Вы также можете более подробно ознакомиться со свидетельством о государственной регистрации и другими документами в разделе . Задать любые вопросы можно в разделе .

    Теперь Вы имеете представление о том, в каком направлении нам предстоит работать, более того, на 100% защищены законом РФ "О защите прав потребителей".

    Удачи Вам в вашем начинании!

    С каждым днем игры становятся все сложнее и навороченнее. Ежегодно в Steam они публикуются тысячами. Они распределяются по разным платформам и категориям. Аудитория игроков стремительно растет. Число разработчиков так же стремительно увеличивается. Быть инди, а точнее соло-разработчиком игр стало тяжело. Но романтика независимости заставляет снова и снова начинать разработку инди-игры. В статье мы поговорим, как выжить на этом пути и как разрабатывать классные игры в жестких условиях конкуренции.

    Хотя появляются новые технологии для создания игр, с каждым годом их разработка становится все сложнее и сложнее. Есть тройка топовых движков: Unity, Unreal Engine 4, CryEngine 5. О них постоянно говорят, и их используют для разработки самых разных проектов самые разные разработчики. Тем не менее сложность этих инструментов перевалила мыслимый рубеж. Они огромны, их функциональность достигла вселенских масштабов. Все эти возможности могут быть использованы большими студиями, но для соло-разработчика это избыточный стафф, он ему не нужен, поскольку для его реализации нужны дополнительные ресурсы, которых у инди и так нет (для разработки игры мечты он свой дом заложил). И если это не AAA-игра, то реализация этих фич бесполезна.

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

    Альтернативные движки

    Я понимаю, что в настоящее время существуют инди-игры всех жанров на любой вкус (и это на самом деле хорошо), но мы под инди-играми в данном контексте подразумеваем маленькие, двумерные, ориентированные на мобильные устройства, созданные соло-разработчиком творения (которых преобладающее большинство), поэтому использовать Unity, UE4 для создания прототипов будет неоправданно сложно. Существует широкий выбор альтернативных движков, они проще в использовании и позволяют достигать впечатляющих результатов за меньший срок, минус спецэффекты, которые инди бы все равно не стал помещать в свою игру. Порой для создания полноценной игры под все платформы эти движки не требуют написания кода. Особенно меня продвинуло на тему альтернативных движков после участия в московской конференции разработчиков видеоигр White Nights 2017, прошедшей в октябре. Я подходил к инди-разработчикам, демонстрирующим свои проекты, и расспрашивал об используемом инструментарии. Во многих случаях они называли вовсе не Unity, а Construct 2 или GameMaker Studio .

    Оба продукта представляют собой конструкторы двумерных игр, не требующие умения программировать (!). В Construct 2 игру создаешь, определяя игровые события и реакцию на них. Итоговые игры портируются под все распространенные платформы. Прога идет с подробной документацией, большим количеством примеров и теймплейтов, так что освоить ее несложно. Покупать советую в Steam, там ее стоимость за персональную версию составляет 6399 рублей.

    Как самому создать игру. Construct 2 с открытым проектом

    GameMaker Studio представляет собой популярный конструктор игр с двумя возможностями построения игры (подобно UE4): первая - методом drag and drop, вторая - писать код на собственном языке системы. В зависимости от целевой платформы игры, созданные с помощью GameMaker Studio, визуализируются с помощью OpenGL или DirectX с использованием соответствующих шейдерных технологий. Для обработки физики есть поддержка движка Box2D. Поддерживается широкий ряд устройств ввода. Десктопная версия в Steam стоит 1599 рублей, экспортеры для других платформ надо докупать: так, экспортер для web стоит 2579 рублей, для UWP - 6396 и столько же для мобильных систем.

    Как создать игру самому. GameMaker Studio

    Третий заслуживающий внимания альтернативный движок - AppGameKit . В отличие от двух предыдущих, разрабатывая с его помощью игры, надо писать код на скриптовом языке. Во многом благодаря этому он меня заинтересовал больше остальных. Стоимость этого движка в Steam составляет 2059 рублей, включая экспортеры под все поддерживаемые платформы. Хорошее вложение. За более подробным описанием архитектурной составляющей движка отсылаю тебя к упомянутой статье.

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

    Где взять арт и прочий стафф?

    В случае если ты программист и плоховато рисуешь/моделишь самостоятельно, весь необходимый для прототипа стафф можно купить в сторах топовых и альтернативных движков (например). Арт, звуки, шейдеры и другой стафф также можно найти в Steam. Они стоят не так дорого. Изображений в одном комплекте может быть несколько тысяч, но все они для разных игр, поэтому на прототип тебе их, может быть, и хватит, а вот для полноценного релиза - вряд ли. И тогда, возможно, ты найдешь свободных художников, на которых произведет впечатление твоя игра. И это правильно, ведь, работая с покупным артом, ты вынужден подгонять свой сюжет под имеющийся арт, а не наоборот.

    Разработка игры с помощью AGK

    Мой выбор пал на AGK по трем причинам:

    • разработка игр основывается на написании кода двух уровней (Tier 1, 2); мне, как программисту, легче освоиться в новом API, нежели в новом интерфейсе редактора;
    • цена демократична;
    • купил я этот движок еще два года назад, все обновления приходят сразу же, как появляются.

    Дополнительные фишки: AGK поддерживает множество типов контроллеров, так, кроме геймпадов, он поддерживает контроллер бесконтактного управления Leap Motion. Плюс в AGK включена поддержка VR.

    Visual Editor

    После запуска AGK мы видим только редактор кода без каких-либо визуальных средств, которыми богаты другие движки. Однако в августе компания The Games Creator выпустила приложение, своего рода аддон для AGK - тулзу Visual Editor. Он покупается отдельно (стоит 899 рублей). Этот редактор позволяет визуально настраивать наполнение сцены и уровня твоей игры, импортировать изображения и 3D-модели, помещать их в сцену как игровые объекты, настраивать положение, размер, угол поворота, цвет и другие свойства с помощью инспектора объектов. Как выглядят сцены на устройствах с экраном разного расширения, можно увидеть, прямо не выходя из редактора. В конце концов, сцену можно сохранить и подключить к AGK. Тот спокойно выполнит код, как будто этот файл создан здесь же. Visual Editor дает возможность строить игры методом drag & drop (не полностью, но частично), подобно другим конструкторам, рассмотренным выше. Но, признаться, это не наш выбор.

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

    Как создать игру. Visual Editor

    Классические танки

    Движок AGK одинаково хорошо подходит для создания 2D- и 3D-игр. Мы остановимся на 2D по понятным причинам: популярность на мобильных - целевых платформах - одна из них.

    Мы испробуем AGK на танках, попробуем воссоздать «классические танки» с игровой консоли NES от 1985 года с новой графикой. Кто не в теме, та игра называется Battle City, во многом именно она послужила прототипом для современных игр про танковые войны (World of Tanks, «Танки Онлайн»). Поэтому наш мир также будет двумерным с обзором сверху.

    Основы AGK

    Разработку мы будем вести на ярусе №1 (Tier 1) - скриптовом языке, похожем на модернизированный для нужд игродела BASIC. Первое, что необходимо помнить о BASIC, - это то, что в конце инструкции не надо ставить точку с запятой. Расслабься и получай удовольствие: никаких указателей и низкоуровневых приблуд, классов тоже нет. Их роли выполняют структуры. Можно создать экземпляр структуры, который закрепляется за числовой константой. В будущем для обращения к этому экземпляру используется закрепленное за ним число. При выполнении функции, чтобы указать, над каким объектом производится операция, надо передать соответствующее число в первом параметре. По сути, в AGK имеется только три типа данных: integer, real, string. По большому счету это все, что необходимо знать перед началом кодирования игр на AGK.

    Приступаем к кодированию

    Мы не будем использовать Visual Editor, напишем весь код самостоятельно (см. пример в материалах к статье). Я не буду приводить в статье листинги игры, поскольку ты всегда можешь их найти в материалах. Я лишь напишу краткие инструкции по выполняемому коду.
    Создадим в AGK новый проект и начнем кодировать. Сначала инициализируем окно вывода: зададим заголовок окна, установим его размер, укажем способность менять размер. Затем установим разрешение, возможную ориентацию устройства, частоту перерисовки, зададим использование всей области экрана, последним действием инициализации включим использование продвинутых векторных шрифтов вместо растровых. Этот код входит в шаблон проекта. Ниже находится основной цикл игры: do … loop. В нем выводится FPS и происходит перерисовка экрана.

    После инициализации игры определяется тип данных для танка, неважно, вражеский он или наш, все поля одинаковые. Объявление типа начинается с ключевого слова Type, за ним следует идентификатор типа, в нашем случае TTank. В первую очередь каждому танку нужны координаты. В AGK объявление происходит таким образом: x as float. Заметь, на конце точка с запятой не ставится. Второй способ объявления переменных - это просто описать их. Например, переменную типа Integer можно объявить так:

    x = 4 , real : x # = 4.4, string: x$ = "four"

    То есть добавляется символ после идентификатора. У типа string для задания строки равноценно можно использовать одинарные или двойные кавычки, главное, чтобы закрывающая была парной для открывающей. Далее задаем идентификаторы для спрайта, для коллизии, для флага определения, чьей стороне принадлежит танк: игрока или ИИ. Скорость, частота стрельбы, количество жизней, флаг поверженности, таймер, измеряющий количество секунд, когда танк стал поверженным, флаг, устанавливающийся, когда танк достиг препятствия (нужен для ИИ), в поворотах танка участвуют две переменные: флаг, устанавливаемый в начале поворота, и номер стороны поворота (нужны для ИИ). Заканчивается определение типа ключевым словом EndType.

    Затем объявим тип для объекта снаряда. Ему нужны: координаты местоположения, координаты места назначения, идентификатор для спрайта, флаг активности, флаг принадлежности и скорость.

    Создадим два массива: один - для танков, второй - для снарядов. Примерно так: Dim tanks as player. Аналогично и со вторым.

    Теперь нам надо загрузить текстуры. Это делается с помощью функции LoadImage, первым параметром передается номер, за которым будет закреплено изображения, а вторым - путь и имя файла. Все игровые ресурсы загружаются из подпапки media папки с игрой. Папка media создается при первой удачной компиляции. Таким же образом загружаем изображение снаряда. В цикле создадим все снаряды. Описание цикла начинается с For makebullets = 1 to 20, а заканчивается инкрементом циклической переменной: Next makebullets. В теле цикла происходит создание спрайта (CreateSprite с параметрами: идентификатор спрайта, номер натягиваемой на спрайт текстуры), установка его позиции (SetSpritePosition), установка слоя глубины (SetSpriteDepth), смещение начала координат для спрайта (SetSpriteOffset).

    После этого мы сбрасываем значения всех параметров танков к значениям по умолчанию, это делается нашей функцией resetplayers. Из нее вызывается функция CreateTank. В качестве параметров она получает: номер танка (индекс в массиве танков), координаты, коэффициенты цветов, угол поворота, принадлежность к игроку или ИИ. CreateTank занимается созданием танка, определяет положение, скорость перемещения, частоту стрельбы, угол поворота. Также она создает для танка спрайты, настраивает их цвета, номера слоев. Далее загрузим текстуру фона и создадим для него спрайт, плюс нам понадобится текстура для препятствия. Зададим тип для препятствия - bricks. Он будет содержать только два поля: номер спрайта и активность. Положение задается при создании в расположенном ниже цикле.

    Для игры нам надо загрузить два звука: выстрел и попадание. Это выполняется функцией LoadSound, она принимает цифровой идентификатор и имя файла. На десктопе AGK может работать с тремя форматами аудио: WAV, MP3, Ogg, а на мобильных с двумя, исключая MP3, из-за того, что этот формат не свободный. Создаем несколько глобальных переменных: текущее время, номер текущего уровня. Вызываем функцию для создания уровня. Весь код находится в глобальном пространстве и будет выполнен при запуске игры.

    Далее мы погружаемся в центральный цикл нашей игры, тело которого выполняется 30 раз в секунду (зависит от частоты смены кадров, на PC может быть 60). Здесь первым делом нам надо получить количество миллисекунд (GetMilliseconds), прошедших с момента запуска игры. Затем запускаем цикл по всем игровым объектам - танкам. Если танк не вращается, он не подбит и им можно управлять (для этого вызываем функцию controlplayer), с другой стороны, увеличиваем его угол поворота. Поворачиваем определенный танк в направлении вектора его движения. Если танк вращается более двух секунд и у него закончились жизни, сбрасываем его состояние (resetplayers). Далее обновляются позиции всех снарядов в функции movefire и идет проверка на подрыв любого танка - в tankhit. Она возвращает номер подбитого танка, который начинает вращаться вокруг своей оси, вдобавок проигрывается звук попадания снаряда. Последней вызывается функция обновления экрана.

    В остальном коде программы описаны используемые функции. Они представляют самую интересную часть - «живые» алгоритмы поведения игры.

    Функция controlplayer, в которую передается номер определенного танка, реагирует на ввод юзера, производя соответствующие действия. Каждой клавише соответствует свой номер в системе ASCII, поэтому сначала нам надо объявить соответствующие клавишам константы:

    #constant KEY_LEFT 37

    #constant KEY_UP 38

    #constant KEY_RIGHT 39

    #constant KEY_SPACE 32

    Когда игрок нажимает клавишу «Вверх», переменная Forward принимает значение 1, когда «Вправо» - переменная turn принимает 1, «Влево» - она же -1. При нажатии пробела, если танк не вращается, происходит выстрел (вызов функции makefire с передачей номера танка), с учетом того, что танк может выстрелить с интервалом в 500 миллисекунд.

    Далее займемся управлением танками ИИ. Если танк противника находится на обозримом расстоянии, наш незамысловатый ИИ просто преследует танк игрока. Приближаясь к цели, он стреляет. Поэтому первым делом надо найти угол между танками. Это выполняется с помощью функции FindAngle. Ей передаются координаты первого и второго объектов. Если второй танк ниже первого, тогда переменная turn принимает значение -2, если выше, то 2. Следующим действием находим разность углов. Потом надо узнать расстояние между танками. Если оно больше 100 виртуальных пикселей, тогда вражеский танк движется к цели. К слову, в AGK измерения ведутся в виртуальных единицах; если после запуска игры их оставить по умолчанию, размер игрового поля составит 100 на 100. Размер можно произвольно менять, в этом случае он будет влиять только на расположение и размер объектов. Вражеский танк ведет стрельбу при следующих условиях: выстрел раз в две секунды, относительный угол между танками меньше 20 градусов, дистанция меньше 500 единиц. Кроме того, в этой функции надо запретить танку выезд за границы игровой области.

    Последняя проверка, помещенная в эту функцию, - это столкновение с препятствиями. В цикле перебираем все препятствия, проверяем, чтобы они были активны, и тогда смотрим, была ли с танком коллизия. Если эти условия выполняются, пытаемся найти лучший путь для обхода препятствия. Когда в столкновении с препятствием участвует танк юзера, просто отключаем тягу вперед. При движении или повороте танка, управляемого ИИ, прибавляем значение переменной turn к текущему углу поворота. Поворот танка: положение по X вычисляем, прибавляя к текущей координате X синус угла поворота, умноженного на 32, положение по Y находим через вычитание из текущей Y косинуса угла поворота танка, также умноженного на 32. То есть, когда мы применяем косинус или синус к углу, поворот выполняется в начале координат, и, чтобы сместить его в заданном направление, надо произвести умножение. С помощью функции SetSpritePositionByOffset производим позиционирование танка. Последнее действие выполняется только во время движения: в нем происходит инкремент координат X и Y на синус
    и минус косинус угла поворота, умноженного на скорость танка.

    Также функция resetPlayers останавливает и делает неактивными все снаряды, выпущенные танками, сбрасывает параметры танков к начальным значениям.

    Затем в функции makefire происходит активация, позиционирование, задание вектора движения и скорости снаряда. В начале выполнения игры мы создали 20 снарядов и спрятали их за пределы экрана, сделав их неактивными, чтобы в нужный момент не тратить время на создание и инициализацию снаряда, а, спозиционировав его, сразу запустить. Поэтому в рассматриваемой функции в цикле от 1 до 20 мы проверяем наличие неактивного свободного снаряда. Найденный, он становится активным, в качестве родителя ему присваивается номер выстрелившего танка, снаряд поворачивается так же, как материнский танк, назначается соответствующая танку позиция. С помощью операций с синусом и косинусом ему назначается вектор полета, затем в функции settankfiredest, прибегая к тонкому математическому выражению, мы вычисляем точку приземления снаряда.

    В цикле функции moveFire перебираем все снаряды и для тех из них, которые активны, инкрементируем положение в соответствии с вектором и скоростью. Если снаряд выходит за границы игровой области, просто делаем его неактивным, другими словами - помещаем в список готовых к использованию.

    Функция checkHit проверяет попадание снаряда в любой танк. Внешний цикл перебирает танки, внутренний - снаряды. Первым делом внутри проверяются возможные столкновения снаряда с ячейкой пола, всего их 192, а их нумерация начинается с 200. Если произошло столкновение с ячейкой пола (ракета достигла своего пункта назначения), дальнейшие проверки выполнять не надо, делаем снаряд неактивным. Следующая проверка смотрит, чтобы выпущенная ракета не принадлежала выстрелившему ею танку. Если она проходит, мы делаем проверку столкновения снаряда с вражеским танком. Если столкновение зафиксировано, уменьшаем количество жизней у подбитого танка, останавливаем ракету, помещаем ее в список доступных для очередного выстрела. Данная функция возвращает номер подбитого танка.

    Функция makeLevel, судя по названию, формирует карту уровня. Сначала двойным циклом проходим по всем 192 «кирпичам», делая их невидимыми и неактивными. Далее делаем видимыми только некоторые препятствия.

    Оставшиеся три функции носят вспомогательный характер. Функция wrapAngle на основе полученного значения угла возвращает эквивалентное ему значение, не выходящее из диапазона 0–360. GetDistance получает четыре параметра - координаты двух точек и возвращает извлеченный корень из выражения, вычисленного по теореме Пифагора; таким образом, функция возвращает расстояние между двумя точками. И наконец, findAngle, получая координаты двух точек, возвращает разность между двумя углами.

    Игра готова, код написан, можно запускать на выполнение. Но прежде не забудь скопировать из материалов к статье необходимый арт (из подпапки media каталога с игрой). Арт для игры состоит из семи файлов.

    Подготовка билда и распространение

    Тестирование на мобильных девайсах

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

    Разрабатывая игры с помощью AGK, их можно не только мгновенно тестировать на десктопе, но и точно так же, не заморачиваясь с установкой SDK и подготовкой билда, тестировать на мобильном устройстве. Для этого надо скачать и установить на свой девайс утилиту AGK Player .

    Как создать игру. AGK Player

    Я тестировал на планшете с ОС Android, однако имеется равнозначная версия плеера для iOS. Когда утилита будет установлена, надо подключить девайс к компу (через USB-кабель или по Wi-Fi), запустить AGK Player, а на десктопе в IDE AGK нажать пиктограмму Broadcast. AGK подключится к устройству, передаст данные, а в плеере запустится твоя игра.

    Экспорт билда

    Когда игра будет протестирована и отлажена, для ее публикации в сторе надо создать билд. Для этого с помощью команды меню File → Export Project «Tanki» → As Android Apk откроем окно Export Android APK, в котором предлагается задать свойства создаваемого пакета.

    Как самому создать игру. Export Android APK

    В области APK Settings, в ниспадающем списке APK Type предлагается выбрать целевую платформу: Google, Amazon, Ouya. App Name - имя приложения в операционной системе, Package Name - имя пакета, к примеру com.yazevsoft.Tanki. App Icon - иконка для приложения, Notification Icon - иконка уведомления, Oaya Large Icon - иконка в версии Android для игровой консоли Oaya. Ниже задается ориентация и минимально поддерживаемая версия Android. В области Permission задаются разрешения - доступ к компонентам системы, на которой будет выполняться наша игра: запись на внешние носители, доступ к камере, запись аудио, вибрация и прочее. Область Game Google Services/GameCircle Integration позволяет задать идентификатор для использования сервисов Google. В области Output задается путь, по которому будет сохранен итоговый пакет. Область Signing позволяет настроить свойства для подписания пакета для размещения его в сторах: задать версию, файл подписи.

    Альтернативные сторы

    Под конец статьи добавлю еще, что не стоит упираться и распространять свои приложения/игры только в топовых сторах - App Store, Google Play. Там все места заняли большие издатели, и покупатели в первую очередь смотрят на их продукты.

    Обрати внимание на альтернативные сторы: Amazon AppStore, Opera Mobile Store, Яндекс.Стор и многие другие. На них меньше пользователей, меньше трафика, вместе с тем меньше конкуренции. Я не призываю ограничиваться тремя перечисленными, смотри шире. Лидирует платформа Android, между тем, кроме Apple AppStore, есть площадки для распространения iOS-приложений.

    Появление альтернативных сторов связано не только с желанием их инициаторов заработать, дело тут и в национальных предпочтениях. Разговор идет о странах третьего мира и восточных товарищей - это Индия, Китай, Вьетнам и так далее. Там превалируют устаревшие Android-девайсы, и пользователи этих устройств готовы довольно часто совершать небольшие платежи за цифровые развлечения. Надо только правильно понять этот рынок. Поэтому выпускать там приложения/игры имеет смысл в сотрудничестве с местными дистрибьюторами. Тонкая восточная душа, сам понимаешь. На первое место выходит необходимость локализации своих игр для местных пользователей. Кроме того, в этих странах могут быть популярны игры других жанров: так же, как везде, казуалки, разные пазлы, экшны, гонки. Взгляни на следующую картинку об исследовании рынка. Она наглядно проиллюстрирует описанное выше.

    Заключение

    Подведем итоги. Статья началась с описания причин появления альтернативных движков и обзора самых популярных из них. Затем мы обсудили источники арта и другого стаффа для игр. Потом, выбрав один из движков, мы рассмотрели его основы и начали кодировать с его помощью простую двумерную игру - классические танки. Мы разработали простенькую аркаду с препятствиями, минимальным искусственным интеллектом, двумя врагами и оружием. После этого мы отладили свою игру прямо на девайсе под управлением Android и, когда все стало готово, собрали пакет для установки игры под любой Android. И все это в рамках одной статьи.

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