Разработка игр с чего начать: как начать делать игры без опыта / Блог компании Нетология / Хабр

Содержание

Памятка начинающему разработчику компьютерных игр / Хабр

Данная статья ориентирована на школьников, студентов, и тех, кто постарше, кто никогда не пробовал, но очень хочет начать писать компьютерные игры. Кто в детстве не играл в компьютерные игры, и не хотел написать свою игру, которая будет лучше, чем GTA или Crysis? И я хотел, и, как ни странно, всё ещё хочу. И за несколько лет практики обучения таких же программированию, набралось несколько заметок, куда двигаться и что делать.

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

1. С чего начать?

С практики. Можно начать с чистой C и OpenGL/DirectX, это путь самурая, потому что обучаться этому с нуля, без каких-либо абстракций довольно сложно.

Можно воспользоваться фреймворками вроде SDL, или более высокоуровневыми LibGDX/PyGame/LÖVE2D, если C/C++ кажутся слишком замороченными. Тут уровень абстракции чуть-чуть повыше, так что работать чуть проще, но всю организацию внутренней структуры игры придётся делать самостоятельно, осознавая, что такое игровой цикл и как в нём организовать систему событий. Данный подход обеспечивает неплохой уровень знаний и навыков, но, поначалу, не даёт стимула забиратсья в глубину железных дебрей.

И, наконец, можно взять игровой движок вроде Unity/Unreal/CryEngine/Godot, и сделать на нём игрушку.

Итак, как же нам выбрать из всего этого разнообразия? А ведь это только малая часть. Типовая ловушка, в которую попадает начинающий ещё-не-разработчик — это выбор инструмента. Фреймворк/движок и язык. Читается множество статей, смотрятся видеоуроки, где-то про что-то говорят отличные штуки, где-то про то же самое рассказывают гадости… Идеальной системы нет и не существует, в противном случае уже давно был бы изобретён Идеальный Игровой Движок (вместе с Идеальным Языком Программирования), и все корпорации искали бы просто «программистов», а не программистов в какой-то конкретной экосистеме. Мы просто берём тот инструмент, который лучше подходит под нашу задачу, или просто больше нравится, а человек который не может выбрать, может оставаться на том же месте на каком и был годами, без какого либо прогресса.

Так как выбрать? Мы можем просто взять первое попавшееся, и начать разбираться. Не понравилось, при использовании дольше недели-другой? Берём что-то следующее, и сразу сходу пишем что-то простое вроде змейки, попутно читая документацию к выбранному инструменту и ища в гугле всё остальное, и выписывая дизайнерский документ своей Супер Игры, которая убьёт Дьябло и Doom одновременно. Зачем же начинать с чего-то простого, когда у нас уже есть идея Супер Игры? Всё очень просто, уровень навыка начинающего разработчика всегда настолько низок, что переписывать свою Супер Игру он будет двадцать раз, результаты не будут оправдывать ожиданий, и за этой фрустрацией — полное остывание к идее написания своей игры и программирования в целом. На старте обучения, мы делаем простые вещи, которые можно сразу пощупать и тут же в них поиграть с друзьями, соревнуясь в рекордах. Это наш стимул, это наша радость от самообучения и продуктивной мозговой деятельности, это то что не даёт нам перегореть. После змейки, можно сначала посмотреть на эту змейку и попробовать её переписать «по нормальному», потому что первая змейка, даже совершенно рабочая, будет иметь монстроподобную внутреннюю структуру, изменить внешний вид змейки будет очень сложно, а добавить в неё новый бонус — ещё сложнее. А потом ещё раз переписать, или перейти уже к чему-то следующему, а то эта змейка уже в печёнках сидит. Теперь будем делать, например, шарик, отпрыгивающий от стен, которым надо попасть в кольцо, не важно, что на самом деле, была бы идея.

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

2. Как учиться?

Тут нам пригодится один крайне полезный навык, под названием «гуглинг». Интернет — это огромный источник информации, который почему-то, на моей памяти, принято недооценивать, а уж вторая страница поисковика — уже что-то недосягаемое. Поэтому учимся задавать такие вопросы поисковику, чтобы он давал нужную нам выборку. В целом, на старте, сойдут видеоуроки. А ещё можно учебников почитать. У видеоуроков есть преимущество в том, что они сразу дают осязаемый результат в сжатые сроки, что очень полезно для мотивации, но в них есть большие проблемы с полнотой информации, поэтому учебники и документацию никто не отменял. Примеры кода можно искать и смотреть на гитхабе, это крайне полезное занятие, из которого можно подчерпнуть не меньше, чем из учебников. Смотрим всё непонятное в чужом коде, и ищем в сети, что же это тут только что было. Потом используем (или нет, хе-хе). Воровство идей и концепций только поощряется (если код был под свободной лицензией). Если что-то прям совсем сложное, но очень нужное — не возбраняется обращаться к другим людям на форумах и в чатах, но этим способом очень легко начать злоупотреблять, поэтому не желательно и только если совсем припечёт, и несколько часов грамотного поиска остались безуспешными. Из областей математики очень советую прочитать и осознать векторную алгебру, аналитическую геометрию, теорию вероятности и ещё очень много умных слов, благо это довольно универсальные области, полезные не только в играх. Из языков — очевидный английский, большая часть документации написана на английском языке. Пользоваться переводчиками не возбраняется. Опять-таки, нам тут нужнее всего научиться учиться и искать информацию, это пригодится везде и всегда, не только в данной области. Тем не менее, обучение не должно затмевать практику и наоборот. Желательно держать соотношение времени между написанием и изучением на уровне 20/80, и то, практику можно только добавлять, вечные студенты — это хорошо, но непрактично. Балансируем время.

3. Захотелось чего-то посерьёзнее?

После прошлого этапа и нескольких (десятков) прототипов игр, мы уже научились сносно писать, может даже с не очень большим количеством вложенных if-elseif-elseif. Мы нашли и прочитали несколько десятков чужих проектов, и пусть половины не поняли — это всё равно не очень страшно, ведь мы уже кажется готовы делать что-то серьёзное, вроде Супер Игры? Придержим коней. У нас есть несколько прототипов, и они даже отлично играются, но мы пока даже не попробовали закончить свою работу. Как только что-то становилось более-менее работающим, мы просто переходили к чему-то более интересному, но нас ещё ждёт крайне суровый этап, на котором ломаются очень многие (и я в том числе, хе-хе): создание Законченного Проекта. Чем он отличается от наших прототипов? А вот чем: Законченный Проект — это тот же самый прототип, но над которым просидели в три раза дольше чем делали прототипную часть, сделали все менюшки, настройки, проверили что оно нормально работает на разных разрешениях экрана и с разными клавиатурами, там есть хотя бы десяток уровней или выбор уровня сложности, чтобы в это было интересно играть не только автору и его друзьям, но и случайным людям в школе или университете. Самая рутинная часть, что сказать, но самая полезная, и очень хорошо тренирует волю к победе. Если не пройти этот этап, можно на всю жизнь остаться писателем прототипов. Балансируем себя в рутине и интересностях.

4. Где искать библиотеки?

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

5. Заключение.

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

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

Где искать художников/музыкантов/дизайнеров? Для начала, можно сделать Почти Законченный Проект, без графики и звуков, с накарябанными в msPaint спрайтами и такими же корявыми анимациями и трах-бахами из свободных ресурсов, найденных в сети. Очень не рекомендую нагружать других людей чем-то, что ещё не закончено и имеет высокие шансы остаться незаконченным.

Я вообще-то собирал(ся/ась) устраиваться в Valve, EpicGames или куда бы то ни было ещё, и работать там, зачем мне всё это? Большая часть программистов в мире — самоучки, зачастую с обширным «подвальным» опытом, более того, прототипы и небольшие игрушки являются отличным портфолио для устройства в крупные компании, причём не только на должность разработчика игр.

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

Спасибо за прочтение, статья подвержена критике и дополнениям.

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

Лирическое отступление

Всем доброго времени суток!

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

Хочу рассказать о том, как начала создаваться наша молодая indie студия и какие выводы мы для себя почерпнули.

Коротко о нас и как так вышло

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

Вариантов была масса, все они были тщательно проработаны и собраны небольшие бизнес планы.

Решили остановиться на области game dev. Хочу, чтобы вы понимали правильно, что в этой области действительно есть как свои огромные перспективы и шансы, так и огромные риски потерять много времени, денег, сил и при этом не получить ничего взамен. Об историях успехов и падений написано много, так что мы опустим эти моменты.

Начало работы

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

  • Люди, которым нужно заработать деньги;
  • Люди, которые хотят стать лучшими в своей сфере;
  • Люди, для которых работа — это хобби, за которое им платят.

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

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

  1. Анализ рынка;
  2. Выбор платформы;
  3. Выбор механики;
  4. Выбор движка под механику;
  5. Написание концепций;
  6. Подготовка материалов;
  7. Начало разработки.

Анализ рынка и выбор платформы

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

Безусловным фаворитом для нас стали мобильные платформы Android и iOS. Разработка решили вести на обе платформы и руководствовались такой логикой, что выпускать продукт для рынка России и бывших стран СНГ (где преобладает Android) не на столько интересно, как для стран Европы, Азии (Китай и Япония) ну и конечно же США. Аудитория, которая пользуется выбранными платформами в этих странах разделилась практически поровну.

Выбор механики

Скажем так: топы по скачиваниям и сборам — MMO и фермы, но для молодой студии это слишком долго и дорого. На втором месте — казуалки формата 2048 и три в ряд, но ниша очень переполнена такими приложениями и занять в ней достойное место будет сложно. Дальше мы увидели, что ранеры subway surfers, temple run и им подобные имеют огромное количество скачиваний, находятся в топах по популярности но не имеют отметок по топовости сборов.

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

Выбор движка

Тут всё было максимально и просто. Выбрали unity3d из за относительной простоты разработки и портирования на разные устройства.

Написание концепций

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

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

Подготовка материалов

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

Были сделаны первые скетчи и собран небольшой уровень без графических элементов (набор кружочков и квадратиков). Дальше работу программистов, гейм дизайнера и иллюстраторов нужно было поставить на поток и стандартизировать. Мы использовали Google docs в качестве площадки для диз.доков, Trello для таск трекинга и Telegram для корпоративного общения. Для небольшой команды использовать Jira или Bitrix24 по нашему скромному мнению не имеет смысла.

Начало разработки

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

P.S.

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

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

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

To be continued…

Как начать писать игры / Хабр

Оригинал: Starting out on Game Programming

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

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

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


Выбор проекта

Итак, с чем же начать? Проще ответить с чего начинать не стоит, а именно с больших проектов, типа полноценной 3D FPS, MMO или даже длинного платформера 16-битной эпохи. Самая распространенная ошибка начинающих разработчиков это начать с большого проекта основанного на Крутой Идее или взять проект, который кажется простым, и закончить с полузаконченной кучей спагетти-кода. Поначалу следует создавать небольшие проекты.

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


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

Принимая во внимание все выше написанное, вот пара советов с чего начать.


Графика и обработка событий

Если вы никогда не программировали ничего связанного с графикой или GUI, вам следует начать с чего то маленького, чтобы «обмочить ноги». Моим первым проектом были крестики-нолики, так что даже у меня было скромное начало. Пара идей для первого проекта:

  • Симулятор однорукого бандита
  • Black Jack
  • Крестики-нолики
  • Четыре в ряд

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

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

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

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


Синхронизация, движение, столкновения, анимация

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

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

Duck Hunt и Pong — хорошие проекты для тех, кто уже имеет опыт в программировании графики и событий. В них есть простое обнаружение столкновений и все важные основы игр в реальном времени.

Space Invaders и Galaga — хороший выбор для второго/третьего проекта. В них есть уровни, поэтому вам нужно будет узнать как передвигаться от уровня к уровню, при помощи конечного автомата. Вы можете прочитать про конечные автоматы здесь(англ.). Игры в стиле «перестреляй их всех» так же требуют создать простые шаблоны поведения для врагов, что является шагом в сторону искусственного интеллекта.

Тетрис хорош для второго/третьего проекта. В нем совсем немного логики нужной для создания игры-головоломки. Это игра приличного размера, так что вам придется научиться разделять вашу программу на несколько исходных файлов, о чем вы можете больше прочитать здесь(англ.). Не недооценивайте Тетрис. Я недооценил и только посмотрите на это жуткое месиво в коде Lazy Blocks.


Переинженеринг

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

Когда я был начинающим я переинженерил AI для крестиков-ноликов. Я хотел сделать игру с непобедимым AI. Мне удалось достигнуть этого, запрограммировав компьютер на знание всех возможных ловушек. Звучит круто не правда ли? Это заняло почти 40 000 тысяч строк в основном скопированного кода и месяц моего свободного времени.

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

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


Планирование, анализ столкновений, физика, уровни, искусственный интеллект

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

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

Теперь про вашу следующую игру. Break Out и Puzzle Bobble хороши для третьего проекта, потому что они включают в себя продвинутое распознавание столкновений и физику. Физика важна, поскольку дает игре реалистичное ощущение. Даже в Super Mario Brothers есть ощущение гравитации и инерции. Бильярд отличный проект для тех, кто хочет напрячь извилины физикой.

В играх типа бильярда вам нужно не только обнаруживать столкновения, но и обрабатывать их в определенном порядке. Обработка столкновений разительно отличается от их обнаружения. Хотя создание бильярда или 2D платформера может показаться простым делом, анализ столкновений в правильном порядке — запутанный процесс, и не должен быть недооценен.

Break out и Puzzle Bobble так же включают дизайн уровней и требуют загрузки и освобождения их ресурсов. Хорошим опытом будет создание редактора уровней для игры. Редакторы позволяют вам легко создавать уровни и не вынуждают впаивать их в приложение. У меня есть статья(англ.) про создание редактора уровней.

Так же вы возможно хотите попрактиковаться в написании искусственного интеллекта (AI). Один из вариантов — вернуться к крестикам-ноликам или четырем в ряд и написать непобедимый AI. Теперь вы уже должны знать структуры данных и сможете использовать знания о деревьях для использования алгоритма Минимакс. С этим алгоритмом вы можете просчитать все возможные исходы крестиков-ноликов и создать непобедимый AI. Забавно расстраивать им своих друзей. Так же вы возможно захотите сделать разные уровни сложности. Игра не приносит радости, если в нее нельзя выиграть.

Pac Man — отличный способ попрактиковаться в написании AI. Нужно будет знать структуры деревьев/графов и алгоритмы поиска, типа A*, для того чтобы призраки могли пройти через лабиринт. Так же нужно будет сделать чтобы призраки работали в команде. Все это пригодится когда вы будете делать игры со сложным AI, типа стратегий в реальном времени. Об основах AI можно прочитать тут(англ.).


Платформеры, Action/Adventure, RPG, RTS, движки

Теперь, когда вы получили опыт создания хорошо спланированной игры, вы готовы к созданию Action/Adventure/Платформера. Это будет кульминация графики, движения, анимации, анализа/обнаружения столкновений, физики, AI, программной архитектуры и всего остального, что вы изучите к этому моменту. Тем кто более амбициозен, можно предложить сделать стратегию в реальном времени(RTS) или ролевую игру(RPG). Будьте осторожны, потому что RPG и RTS действительно огромные проекты.

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

RTS также сложны архитектурно, а так же требуют много AI. Вам нужно будет делать поиск пути для юнитов, получение ими команд, разное поведение в зависимости от полученных команд. Если вы никогда до этого не делали AI, будет лучше начать с клона Pac Man’а для начала.

Вероятно вам впервые придется делать движок для вашей игры. Чего следует избегать, так это создания универсального движка. Создавая движок не пытайтесь сделать его подходящем для любой игры. Если ваша игра требует x, y и z, делайте движок который умеет x, y и z. Движки создают исходя из того что нужно для конкретной игры, а не из того что любой игре может потенциально понадобится.

Другая распространенная среди новичков ошибка — это попытка создать движок в качестве первого проекта. И обычно это универсальный движок. Вам не нужен движок с фантастической графикой для создания Pong’а или Space Invaders. Программируя, легко закопаться в деталях. Концентрируйтесь на общей картине и завершайте свои игры.


Сеть

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

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

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

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


3D игры

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

Хорошая новость в том, что если вы уже сделали 4 или 5 игр, вы уже знаете основы необходимые для создания игры. Вы уже хорошо знакомы с процессом разработки и знаете свои возможности как программиста. Неважно трехмерный шутер или двухмерный, он по прежнему шутер. 2D RPG или 3D RPG по прежнему RPG.

Не считайте это оправданием пропустить 2D и сразу перейти к 3D. Прежде чем научиться бегать, нужно научиться ходить.


Быстрый способ

Говорите, что вы учитесь быстрее если сразу возьметесь за дело и будете просто писать вашу 3D MMOFPSRTSRPG и научитесь тому, что нужно по мере необходимости? Чтож, вот пару советов, которые вам помогут:

  1. Идите на местный рынок
  2. Купите целую рыбину. Рекомендую взять лосося или треску, хотя и сом тоже подойдет. Форель, кстати, тоже довольно эффективна
  3. Идите домой и включите компьютер
  4. Запустите вашу любимую IDE
  5. Теперь возьмите купленную рыбу и влупите себе по голове
  6. Повторите пункт 5, пока мысли о быстром способе не покинут вас

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


Путешествие начинается

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

  1. Выберите свой темп
  2. Доделывайте игры до конца
  3. Концентрируйтесь на обучение, а не просто на создании

Удачи вам на пути разработки игр!

С чего начать разработку игр? — Хабр Q&A

Сразу простой ответ: ютуб или рутракер: game dev %steps%course итд.
Более занудная версия:
1) Определиться с жанром. Погуглить на английском лучшие движки для жанра. Погуглить о кроссплатформенности и кроссдевайссности. Юнити самый оптимальный по многим параметрам. Потом на любом торренте(рутракер) скачать курсы по теме, там очень много полезной инфы, не ограничиваться одним запросом, повнимательней поискать.
2) Определиться с вашей ролью. Кодер-дизайнер-3дшник-аниматор. Все вместе совмещать невозможно на проф уровне. Освоение одной профессии на нестыдном уровне по правилу 10000 часов займет 5-6 лет, при 8 часовом графике.
Быть инди конечно круто, но надо понимать это особые люди, у которых звезды так сложились, что они имеют гигансткую волю с детства и вероятно окружение в виде близкого родственника из среды геймдева/ит.
Поэтому игру то конечно делать начать можно и нужно, но паралельно искать в сообществах партнера. Для этого должен быть примитивный, минимальный диздок — документ-питч о фичах игры.
3) Более менее реальный план чтобы не просиживать днями в прокрастинации. Работайте 4 часа в день, но работайте, учитесь итд, а не «потом нагоню».
Например план может быть таким:
1) курс про с# basic/advanced —
2)game dev курс. любой для включения в тему. ознакомление. на ютубе тожеполно — важно именно сделать маленький проект типо тетриса. Так приходит понимание и перекладывание в голове общих концепций для своего примера
3) unity basic/advanced
4) unity %ваш жанр
5) game dev %ваша специализация либо game dev indie

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

spoiler

Я лично запоролся на этапе попытки быть индюком и совмещать все. Ту факин мач ворк. А тут и деньги потребовались времени учиться нет. Перенаправился в дизайн, зарабатываю на жизнь и коплю тихонько на команду. Знания полученные в смежных областях кодинга и 3д помогают конечно, но учиться еще лет 5 и стать полусредним спецом в 3 областях ради непонятной игрули и непонятного выхлопа — жизнь сволочь не позволяет. И еще ошибка моя — которую я щас прекрасно вижу — это перфекционизм. Я пытался все делать слишком профессионально. А по факту можно было на вообще любом движке, самом обдолбанном сделать полностью законченную лаконичную игру, пусть с неидеальной анимацией 12 кадров в сек, чуть долгими загрузками меню из за манки кода, но игру с душой, которая работает. Потому что конечному пользователю вообще до лампы какой код ты написал, в какой проге, использовал ли чужие шаблоны итд. Не важна и мастштабируемость, возможность прикрутки разных модулей типа сетевой игры, поддержки устаревших осей итд. Сейчас рынок такой большой, что если игра стрельнет, то найдет своего игрока, а это и мотивация и деньги и новые горизонты

С чего начать разработку своей игры

С чего начать разработку своей игры? Как ни странно, но самым первым и очевидным пунктом здесь будет: оставьте эту затею.

Серьезно. Если вы только-только планируете свой путь в игровой индустрии, у вас горят глаза, и вы точно уверены, что знаете как сделать своего «
Ведьмака», Fallout или World of Warcraft — не начинайте.

Спецматериал. С чего начать разработку своей игры

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

То, что вы прошли все части
Assassin’s Creed и последние пять лет запойно играете в Dоta 2 или LoL, совершенно не значит, что вы что-то понимаете в игровой индустрии. Скажу прямо, вероятнее всего, вы абсолютно ничего в ней не понимаете.

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

Редкие исключения лишь подтверждают это правило. Люди приходят в игровую индустрию, наслушавшись историй успеха
Minecraft, Punch Club, Terraria и прочих. Но они забывают, что тот же Нотч, прежде чем начал делать Minecraft, уже несколько лет отработал в игровой индустрии. В том числе, четыре с лишним года проработал в компании King. Да-да, той самой King, которая ответственна за Free-to-Play серию «Saga». Эти люди также забывают о сотнях разработчиков, которые, как и они, пришли в игровую индустрию с горящими глазами и желанием сделать своего «Ведьмака» или Fallout… и облажались.

Если вы хотите сделать свою игру, чтобы она вышла, и ее покупали, то ваш идеальный вариант — работа в игровой компании или маленькой студии.

Это долго. Сперва вам придется разобраться в том, как все работает изнутри. Да, скорее всего начнете вы с самых низов, а делать будете какое-нибудь бездушное Free-to-Play, но поверьте, оно того стоит. Со временем вы начнете более-менее ориентироваться в том, как должны быть выстроены процессы. Поймете, чем отличается создание Pay-to-Play игр от Free-to-Play, накопите знаний и обзаведетесь знакомствами. И тогда, находясь на позиции senior-разработчика, вы с высоты полученных знаний и пройденного пути посмотрите на свой давний концепт Fallout Online и скорее всего поймете, что уже не хотите делать эту игру. Согласитесь, гораздо комфортнее и попросту менее затратно учиться и набивать шишки за чужой счет.

Спецматериал. С чего начать разработку своей игры

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

Будет нелегко. Свою первую игру я начал делать примерно так же. Я говорил себе:
«Я вижу, что если вот здесь и здесь сделать иначе, то будет намного интереснее, а разработчики этого не видят. Вывод: я на их месте смог бы сделать игру гораздо лучше!». К сожалению, это не так. Большинство разработчиков и сами прекрасно знают, как можно было сделать лучше, но по той или иной причине сделать этого они не могут.

Спецматериал. С чего начать разработку своей игры

Остановитесь на минутку и адекватно оцените уровень своей экспертизы в игровой индустрии.

Какими знаниями и навыками вы обладаете? Сможете ли вы сделать проект в одиночку? А если нет, то сможете ли вы привлечь в вашу команду людей, которые обладают недостающими у вас навыками и экспертизой? Станут ли с вами общаться потенциальные инвесторы? Объективно, никто в здравом уме и трезвой памяти не даст вам денег на ваш собственный World of Fallout, пока вы не продемонстрируете, что можете довести до ума хотя бы пяток простеньких «пятнашек».

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

Спецматериал. С чего начать разработку своей игры

Что такое концепт-документ? Это документ, в котором максимально доступно и лаконично расписана ваша идея: общие сведения об игре, целевая аудитория и USP (Unique Selling Points) проекта. Обычно это документ на 2-4 листа, который вы будете показывать инвесторам, своей команде и коллегам-разработчикам.

В интернете, особенно англоязычном, легко можно найти большое количество информации на эту тему (есть даже готовые шаблоны). Что касается русскоязычного сегмента индустрии, то раньше здесь очень любили тыкать новичков лицом в шаблон от 1С под названием «Ryaba’s Revenge», но, благо, это время прошло. Пользоваться шаблоном или писать его полностью самостоятельно, каждый волен решать сам. Главное, делать это с учетом набора базовых принципов, о которых я сейчас расскажу.

Спецматериал. С чего начать разработку своей игры

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

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

В идеале, концепт должен вытекать из первого пункта (экспертизы). То есть, если ваша команда состоит из 2D художника, который последние пять лет рисует HOG’и, программиста, который последние три года работает на
Unity, и гейм-дизайнера, который никогда кроме match-3 ничего не делал, то возможно начинать делать клон Overwatch на Unreal — не самый лучший для вас вариант.

Еще один важный момент: если у вас оригинальная и, на ваш взгляд, гениальная идея, это совсем не значит, что она действительно такая. Управление в мобильной игре посредством кнопок увеличения и уменьшения звука и стрельба кнопкой «Home»? Оригинально! Нигде такого не было? Да! Но значит ли это, что ваша игра будет интересной? Что она будет продаваться? Совсем не факт. Оригинальность только ради самой оригинальности — полная чепуха.

Спецматериал. С чего начать разработку своей игры

Следующий пункт: когда концепт готов, покажите его как можно большему количеству людей. Не бойтесь, никто не станет похищать вашу гениальную идею. Она никому не нужна. Сами идеи в современном мире стоят несколько центов и продаются оптом.

Итак. Вы определились с тем, что хотите делать и даже написали концепт документ.

Спецматериал. С чего начать разработку своей игры

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

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

  • Если схожие проекты уже имелись на рынке, то он заявлял: «На рынке уже куча таких игр, этот проект просто затеряется среди них».
  • Если схожих проектов на рынке не имелось или их было слишком мало, то ответом являлось: «Посмотрите на рынок, будь эта идея классной, в магазинах бы давно лежала куча игр с подобной механикой».

Спецматериал. С чего начать разработку своей игры

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

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

Спецматериал. С чего начать разработку своей игры

На рынке нет похожих игр? Подумайте, возможно человечество действительно еще не готово к вашей гениальной идее, в которой необходимо стрелять посредством кнопки «Home».

Спецматериал. С чего начать разработку своей игры

Прототипирование основного игрового процесса. Чем раньше, тем лучше!

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

Спецматериал. С чего начать разработку своей игры

И даже если не переносится, ничто вам не мешает это сделать.

Если основные USP проекта заложены в сюжете — попробуйте расписать его.

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

Вот так, например выглядел один из первых флеш-прототипов
Hearthstone.

Спецматериал. С чего начать разработку своей игры

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

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

Спецматериал. С чего начать разработку своей игры

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

Допустим, что вы адекватно оценили силы своей команды, написали концепт, провели исследование рынка и сделали простой, но играбельный прототип. Что дальше?

Спецматериал. С чего начать разработку своей игры

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

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

Спецматериал. С чего начать разработку своей игры

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

Спецматериал. С чего начать разработку своей игры

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

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

Что ж, давайте подытожим.

Спецматериал. С чего начать разработку своей игры

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

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

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

руководство для начинающих / Хабр

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

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

Приятного вам чтения!

INDIEPENDENT

Ну что ж, поехали. Как вы считаете, что на самом деле значит быть «инди»? «Инди», или «indie» — это сокращение от «independent», то есть «независимый»? Относится ли определенная игра к «инди» или нет? Может, «Инди» — это жанр? НЕПОНЯТНО – ЗАЧЕМ ВООБЩЕ НАМ ПОНАДОБИЛОСЬ СЛОВО «ИНДИ».

Разберемся с последним вопросом. Я предлагаю вам два следующих сценария. Сценарий первый: кто-то хочет заниматься созданием игр, и, возможно, основывает свою собственную студию. Он вводит в поисковую строку «game development». Для подобного человека результаты поиска окажутся, мягко говоря, неутешительными. Они сухие, слишком «академические» и рассчитаны по большей части на программистов. Не верите – попробуйте сами.

Сценарий второй: вместо этого наш кто-то вводит в поиск «инди игры», и вместо бесконечных страниц из ссылок на конференции, ученые степени и разные утилиты он увидит бесконечные страницы из ссылок на игровые и яркие сообщества, полные тех, кто занимается тем же, о чем он только мечтает. Конечно, некоторые из них все еще ходят в школу, но большинство уже прошло этот жизненный этап. Богатство различных идей и инструментов приводит в изумление, да что там – в природе существуют даже документальные фильмы о создании игр! Это вам не тот случай, когда вы сначала годами получаете образование, а потом долго пытаетесь устроиться на работу – тут вы можете начать делать игры ПРЯМО СЕЙЧАС.

Слово «инди» — это значительно больше, чем просто способ описания определенного процесса разработки… как и любой «ярлык» принадлежности к тому или иному объединению, он всем страждущим открывает путь для изучения своего процесса и учит процветанию с его помощью в дальнейшем. У этого слова есть реальная причина существовать — ведь оно предлагает практические уроки по разработке игр и предпринимательству, а это способно создавать самую настоящую мотивацию!

Конечно, сам термин часто используется не по назначению. Иногда это может вызывать раздражение – особенно, когда слово «инди» употребляют для пущей вычурности или с высокомерием. Кроме того, как и любой ярлык, «инди» порождает определенные догматы… Но конечный результат все-таки того стоит. Как человек, который однажды уже распрощался с профессиональной разработкой игр из-за графика 5/2, я могу сказать, что независимая разработка имеет серьезное право на существование.

Насчет того, какие игры можно считать «настоящими» инди, мы скорее всего так никогда и не договоримся – да, собственно, оно и к лучшему. Но есть критерии, которые я вывел для The Independent Gaming Source — для того, чтобы определить, относится ли игра к инди:

1. «Независимая», то есть не имеет издателя.

2. Сделана небольшой студией (грубо говоря, в штате 20 человек или меньше).

Я выбрал это определение по той причине, что оно самое полезное. Тот, кто собирается стать «инди» игровым разработчиком, обычно интересуется тем, что можно сделать на основе этих ограничений и как работают такие виды студий. Компании вроде Valve или Double Fine сюда не входят – да, они независимы, но слишком велики, чтобы относиться к «инди». Кроме того, из списка исключаются те, кто «напоминают инди» — это разработчики, которые не издают свои игры самостоятельно.

Это определение все еще не гарантирует точной дифференциации, но, в конце концов, если не каждый из нас сможет сказать, где та грань, когда «красный» становится «розовым» — это же не делает названные слова бесполезными. Просто представьте себе кого-то, кто хочет силами небольшой команды сделать игру и самостоятельно опубликовать ее… что они наберут в строке Google для поиска вдохновения, совета или помощи сообщества? Как мне кажется, слово «инди» в этом случае даст результат ничем не хуже других.

Итак — должен ли я идти учиться в университет для того, чтобы научиться тому, как делать игры?

Самое главное, что вы должны запомнить про разработку видеоигр и обучение – это то, что ни в маленьких независимых студиях, ни в больших компаниях никого не будут интересовать ваши ученые степени и образование. Да и с чего бы – ведь одни из самых известных игровых разработчиков либо были отчислены, либо никогда не переступали порог университета? Джон Кармак, Клифф Блежински, Джонатан Блоу и Team Meat – все они члены этого тайного клуба.

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

Я сказал все это вовсе не для того, чтобы отговорить вас от поступления в университет – сам я изучал в нем computer science, и хотя пригодившегося мне в дальнейшем я изучил там не слишком много, я все же получил массу полезного опыта – завел друзей и узнал что-то новое. Запомните, что главное, на чем вам стоит сосредоточиться – это создание чего-нибудь: игр, модов, арта и музыки. Если ваше образовательное учреждение способно помочь с этой задачей – это отлично; а вот если нет – вам стоит задуматься о том, правильно ли вы распределяете свои самые важные ресурсы – время и деньги (которые обучение лихо может скосить под корень).

Если я пойду учиться, то что мне стоит изучить?

В обычном университете вам стоит в первую очередь заняться computer science – даже если вы «просто хотите быть дизайнером». Дизайн компьютерных игр очень тесно связан со способом их производства – то есть с программированием.

В художественной школе – займитесь иллюстрацией, концепт-артом и курсами 3D моделирования – для разработки игр они будут полезнее всего.

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

Смотрите также: Джонатан Блоу – Как программировать независимые игры (комментарии и видео также рекомендуются к изучению).

ОК, значит я должен что-то сделать. И с чего начать?

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

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

Однако, мы все-таки говорим про игры. Поэтому я рекомендую попробовать Game Maker и Unity — это два универсальных пакета, подходящие для всех жанров, которые могут прийти в голову начинающему инди-разработчику. Они удачно сбалансированы в плане возможностей и простоты использования; их можно приобрести за разумные деньги или воспользоваться бесплатными демо-версиями, и не стоит забывать о большом количестве обучающих руководств и плагинов. Оба пакета используются профессиональными разработчиками (особенно Unity). Выберите любой из пакетов и начинайте проходить уроки. Когда вы где-нибудь застрянете, попросите помощи; когда у вас самих начнет что-то получаться – помогайте разобраться другим. Станьте активным членом в сообществе создателей игр.

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

А еще посмотрите вот это видео:

Наконец, 10 лучших моих советов

1. Доделывайте ваши игры. (спасибо gcc за перевод!)

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

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

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

Однако, как говорится, «это интернет, %username%», и тут хорошая игра сама найдет себе дорогу. Маркетинг может оказать существенную поддержку, и попытка обмануть всех может помочь вам ненадолго вырваться вперед — возможно, даже основательно вырваться. Но эти меры не помогут вам обрести успех на пустом месте – маркетинг просто умножит то, насколько ваша игра уже хороша. Если же вы предпочитаете считать наоборот, то в итоге получаете только одно – вы становитесь менее самокритичны и упускаете шанс улучшить свое мастерство. Помимо этого, вы еще и поощряете остальных поступать точно так же.

4. Инди – это не жанр и не эстетика. Делайте игру такой, какой вам захочется – не пытайтесь подогнать ее под несуществующие «стандарты» инди-игр. Не так давно, небольшая (и очень независимая) команда, разработавшая The Legend of Grimrock, сообщила, что их очень традиционно-классический dungeon crawler от первого лица продался в количестве 600 000 копий. Так что не надо изменять своим принципам и видению из-за давления со стороны – в конце концов, разве не из-за его отсутствия вы выбрали независимую разработку?

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

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

6. Оставайтесь независимыми! Не буду скрывать, что жизнь инди-разработчика может быть сложной. У вас всегда будет искушение продать себя или свои идеи кому-то еще в обмен на кусочек счастья – ощущения безопасности и надежности. Честно говоря, если вы один раз выберете эту дорогу, то свернуть с нее будет уже не так просто – ведь каждый раз, когда вы прячетесь в безопасное укрытие, вы чаще всего не развиваетесь. Я не хочу сказать, что вы должны пускаться во все тяжкие – но вам важно не забывать о том, ради чего вы во все это ввязались, и фокусироваться только на этом. Помните — жизнь коротка.

Кроме того, не отдавайте свои «торговые марки» и не связывайте себя обязательствами на слишком долгий срок. Пусть эксклюзивность будет ограничена по времени. Когда мы выпустили Aquaria – нас не интересовал Steam. Такой вещи, как Humble Bundle, еще и в природе не существовало, и iPad – тоже. А сегодня мы попали на все эти платформы – и это сослужило нам неплохую службу. Так и ваши руки не должны быть связаны на тот случай, если будущее принесет новые возможности.

7. Не ждите удачу — создавайте ее сами. Как и любой творческий человек, я во многом обязан тем, кто меня окружает – моей семье, друзьям, коллегам и идолам. Я признаю, что огромная часть моего успеха смогла произойти лишь благодаря тому, что мне повезло родиться среди этих людей.

Но важно знать то, что каждый из нас сам создает многие из своих возможностей. Например, я встретил Алека (моего друга и соавтора Aquaria), потому что он предложил мне поработать над «I’m O.K.». Это была игра, родившаяся на форуме Pix Fu. Этот форум был частью моего веб-сайта, а его участники – моими друзьями, с которыми я познакомился гораздо раньше – во времена работы в Blackeye Software/Klik n’ Play.

Схожий путь прошла Spelunky от оригинальной PC-версии до XBLA благодаря форуму TIGSource.

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

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

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

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

Люди переходят в защитное положение, когда они напуганы. Не сидите за одним столом с кем-то подобным, ведение бизнеса должно быть приятным занятием! Это не Уолл-Стрит!

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

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

10. Вы — это ваша игра, поэтому вы должны понимать и развивать себя. Раз уж вы — независимый разработчик, то в вашей игре будет гораздо больше «вас», чем в той, которую создавали сотни или тысячи человек. Вы должны понимать сами себя достаточно хорошо, иначе вам никогда не сделать по-настоящему успешную игру. К счастью, раскрытие того, что же делает вас «вами» – ваши вкусы, интересы, способности – это одно из самых больших жизненных удовольствий, и оно рука об руку идет с вашей целью стать независимым создателем. Дорожите этим!

Оригинал: Make Games — Making it in Indie: Starter Guide.

Как выйти из хаоса и начать работать / Блог компании Microsoft / Хабр

Вот и настал этот день, когда мы представляем последнюю статью из цикла «GameDev с нуля». В ней тимлид и геймдизайнер из OVIVO рассказывает о структурном подходе к разработке игрового проекта.

Цикл статей «GameDev с нуля»

1. От хакатона до собственной студии разработки игр: часть 1, часть 2.
2. Unity3D и векторная графика.
3. Как общаться с игроком без слов.
4. Как выйти из хаоса и начать работать.

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

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

Этапы инди-разработки

Прототипирование

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

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

Маркетинг

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

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

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

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

Подготовка к работе

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

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

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

Разработка самой игры

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

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

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

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

Подготовка к релизу

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

Разработчику необходимо научиться кратко и доходчиво рассказывать об игре. Это нужно чтобы человек, которому направлено письмо с предложением сделать обзор на игру, сразу понял о чем идет речь. Это целая наука и об этом очень хорошо написано в книге «Маркетинг игр» от известного своими игровым подкастами Сергея Галенкина. Это отличный справочник для начинающих разработчиков. В ней простым и понятным языком рассказывается о маркетинге игр на всех этапах разработки.

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

Релиз

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

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

Эпилог

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

Спасибо читателям и всем, кто следил за нашей разработкой и оказывал нам поддержку. Это заключительная статья в цикле «GameDev с нуля» и своеобразный эпилог к нашей разработке. Для нас этот путь был долгий и нелегкий, но чертовски увлекательный и незабываемый.

Очень жду ваших комментарий.

The circle is now complete. (с)



P.S. Сегодня у нас релиз, ссылка на страницу игры в Steam.

4 бесплатных веб-сайта, на которых вы можете изучить основы разработки игр

MakeUseOf — Политика конфиденциальности

Мы уважаем вашу конфиденциальность и обязуемся защищать вашу конфиденциальность во время работы в сети на нашем
сайт. Ниже раскрываются методы сбора и распространения информации для этой сети.
сайт.

Последний раз политика конфиденциальности обновлялась 10 мая 2018 г.

Право собственности

MakeUseOf («Веб-сайт») принадлежит и управляется Valnet inc.(«Нас» или «мы»), корпорация
зарегистрирован в соответствии с законодательством Канады, с головным офисом по адресу 7405 Transcanada Highway,
Люкс 100, Сен-Лоран, Квебек h5T 1Z2.

Собранные персональные данные

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

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

Файлы журнала

Как и большинство стандартных серверов веб-сайтов, мы используем файлы журналов. Это включает интернет-протокол (IP)
адреса, тип браузера, интернет-провайдер (ISP), страницы перехода / выхода, тип платформы,
дата / время и количество кликов для анализа тенденций, администрирования сайта, отслеживания пользователей
движение в совокупности и собирать широкую демографическую информацию для совокупного использования.

Файлы cookie

Файл cookie — это фрагмент данных, хранящийся на компьютере пользователя, связанный с информацией о пользователе.
Мы и некоторые из наших деловых партнеров (например, рекламодатели) используем файлы cookie на нашем веб-сайте.
Эти файлы cookie отслеживают использование сайта в целях безопасности, аналитики и целевой рекламы.

Мы используем следующие типы файлов cookie:

  • Основные файлы cookie: эти файлы cookie необходимы для работы нашего веб-сайта.
  • Функциональные cookie-файлы: эти cookie-файлы помогают нам запоминать выбор, который вы сделали на нашем веб-сайте, запоминать ваши предпочтения и персонализировать ваш опыт работы с сайтом.
  • Аналитические и рабочие файлы cookie: эти файлы cookie помогают нам собирать статистические и аналитические данные об использовании веб-сайта.
  • Файлы cookie социальных сетей: эти файлы cookie позволяют вам взаимодействовать с контентом на определенных платформах социальных сетей, например, «лайкать» наши статьи. В зависимости от ваших социальных сетей
    настройки, сеть социальных сетей будет записывать это и может отображать ваше имя или идентификатор в связи с этим действием.
  • Рекламные и таргетированные рекламные файлы cookie: эти файлы cookie отслеживают ваши привычки просмотра и местоположение, чтобы предоставить вам рекламу в соответствии с вашими интересами.
    См. Подробности в разделе «Рекламодатели» ниже.

Если вы хотите отключить файлы cookie, вы можете сделать это в настройках вашего браузера. Для получения дополнительной информации о файлах cookie и способах управления ими,
см. http://www.allaboutcookies.org/.

Пиксельные теги

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

Рекламодатели

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

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

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

Мы используем следующих рекламодателей:

Ссылки на другие веб-сайты

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

Цель сбора данных

Мы используем информацию, которую собираем, чтобы:

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

Данные передаются третьим лицам

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

Как хранятся ваши данные

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

IP-адрес и строковые данные пользовательского агента от всех посетителей хранятся в ротационных файлах журнала на Amazon.
сервера на срок до 7 дней. Все наши сотрудники, агенты и партнеры стремятся сохранить
ваши данные конфиденциальны.

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

Согласие в соответствии с действующим законодательством

Если вы проживаете в Европейской экономической зоне («ЕЭЗ»), окно согласия появится, когда
доступ к этому сайту.Если вы нажали «да», ваше согласие будет храниться на наших серверах в течение
двенадцать (12) месяцев, и ваши данные будут обработаны в соответствии с настоящей политикой конфиденциальности. После двенадцати
месяцев, вас снова попросят дать согласие.

Мы соблюдаем принципы прозрачности и согласия IAB Europe.

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

Безопасность данных

Наши серверы соответствуют ISO 27018, сводам правил, направленных на защиту личных данных.
данные в облаке. Мы соблюдаем все разумные меры предосторожности, чтобы гарантировать, что ваши данные
безопасность.

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

Доступ, изменение и удаление ваших данных

Вы имеете право запросить информацию о данных, которые у нас есть для вас, чтобы запросить
исправление и / или удаление вашей личной информации. пожалуйста, свяжитесь с нами в
[email protected] или по указанному выше почтовому адресу, внимание: Отдел соблюдения требований данных.

Возраст

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

Заявление об отказе от ответственности

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

Уведомление об изменениях

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

Контактная информация

Если у пользователей есть какие-либо вопросы или предложения относительно нашей политики конфиденциальности, свяжитесь с нами по адресу
[email protected] или по почте на указанный выше почтовый адрес, внимание: Департамент соответствия данных.

.

Как начать разработку инди-игр

Хорошо, у вас есть потрясающая идея для игры, но вы не знаете, с чего начать. Или, может быть, у вас есть расплывчатая идея , но из-за огромного количества вещей, которые необходимо учитывать, выход за рамки вашей первоначальной идеи кажется ошеломляющим и мешает вам сделать первые шаги в создании чего-то удивительного. Чтобы помочь вам преодолеть первое препятствие, мы попросили разработчиков лучших инди-игр дать практический совет по началу работы. Давайте не будем приукрашивать это: нет короткого пути к успеху — или даже гарантии, что ваша игра будет завершена, — но одна вещь, которая звучала прежде всего, это то, что никогда не было лучшего времени для воплощения ваших идей в жизнь.Эта статья является лишь началом долгой и потенциально изменить жизнь путешествие, если вы готовы к работе трудно (как, на самом деле, на самом деле, трудно) и оставить свои предвзятые позади.

Хотите больше функций Xbox, интервью и советы?

Подпишитесь на официальный журнал Xbox в печатном или электронном виде, чтобы получить более подробные сведения о функциях, обзорах и предварительных обзорах о Xbox One, Xbox One X и будущем консоли Microsoft.

«Вам нужно знать, сколько вы не знаете», — объясняет арт-директор Cuphead Чад Молденхауэр.«Вы не знаете, сколько на самом деле будут стоить вещи, вы не знаете, сколько времени на самом деле потребуется, чтобы развиваться. Вы действительно не знаете, насколько взаимосвязаны искусство, программирование и дизайн, и как ограничения по времени и деньгам в одном из них приведут к компромиссу в двух других. Как только вы узнаете, что не знаете этих вещей , вы поймете, что ваши планы по масштабам и срокам неверны, и вы будете более реалистичны в своих действиях ».

Вы должны делать это по правильным причинам.Если вы думаете сделать это ради денег, вы будете очень разочарованы. «Создание инди-игр выгодно не для всех, и это немного более напряженно, чем многие другие занятия», — говорит разработчик Ooblets Бен Вассер. «Работа в офисе обычно является более простым, безопасным и высокооплачиваемым карьерным ростом. Лично я по-прежнему предпочитаю делать инди-игры, но люди не должны впадать в ложные впечатления, когда они начинают «.

У меня есть идея… с чего мне начать?

Имея это в виду, следующее, что вам нужно сделать, это взять свою идею и решить, какой игровой движок вы будете использовать.Есть из чего выбрать, например, Gamemaker Studio 2, Unreal Engine или Unity, и это лишь некоторые из них. Каждый из них позволяет делать разные вещи, и у всех есть бесплатные версии, так что вы можете поиграть с ними и посмотреть, какая из них лучше всего подходит для игры, которую вы пытаетесь создать. Unity — самый популярный среди инди-разработчиков, поскольку он хорошо работает как с 2D, так и с 3D играми. Однако это требует от вас изучения программирования. Но, к счастью, и для этого есть решение. «Так много удивительных людей тратят время на бесплатное обучение других», — говорит разработчик The Last Night Тим Сорет.«Смотрите переговоры GDC, видео на YouTube, читайте статьи 80.lv, Gamasutra. Ты многому научишься, даже если не поймешь на 100% долгое время ». Следующие руководства — отличный способ облегчить вам путь и применимы к любой другой дисциплине в разработке игр.

  • Что такое игровой движок? Мы представляем лучшие программные инструменты для разработчиков.

Когда у вас есть движок, начинается самое интересное. «Лучший способ начать — это просто начать создавать свою первую простую игру», — говорит Молденхауэр.«Если вы программист, начните создавать основной прототип игрового процесса. Если вы художник, начните создавать полезные ресурсы для игры. Если вы дизайнер, начните разрабатывать макеты уровней и конкретные концепции игрового процесса. Если вы писатель, начните писать сценарий. Как только вы начнете, вы увидите свои пробелы в знаниях, а затем сможете попытаться восполнить их ». Главное — просто начать чем-нибудь наполнять вашу игру, чем угодно.

«Если искусство не ваша сильная сторона, вы можете нанять собственного художника»

«В Twitter, Tumblr, ArtStation и Dribbble вы можете найти множество невероятных художников, которых вы можете нанять внештатным или полным — время, — говорит Вассер.«В Unity Asset Store есть много чего, что нужно для тестирования идей». Но если вы чувствуете себя более уверенно, возможно, вы захотите сделать это самостоятельно. «Если искусство не является вашей сильной стороной, вы можете нанять собственного художника», — говорит художник Chucklefish Лу Насименто. «Но если вы заинтересованы в создании ресурсов пиксельной графики самостоятельно, вы можете воспользоваться множеством руководств на форумах, в средних статьях, на YouTube и даже в Twitter». Это идеально, если вы не можете нанять кого-либо для помощи, а это будет большинство людей, когда вы только начинаете.

Будьте осторожны, чтобы не опередить себя. «Старайтесь не разрабатывать высококачественные художественные ресурсы, пока ядро ​​игры не станет правильным», — говорит Молденхауэр. «Сделайте свою игру как можно ближе к тому, что вы хотите, чтобы ощущалась финальная игра, прежде чем делать ее красивой. Если вы вкладываете много работы в искусство, пока игра все еще находится в движении, вы в конечном итоге выбросите много дорогостоящей работы, когда ядро ​​изменится. Или, что еще хуже, вы будете жить с нестандартным игровым процессом, потому что не хотите тратить зря искусство, которое для него было создано.

Одних технических навыков может быть недостаточно.

«Помимо навыков технического развития, существуют мягкие навыки — планирование, работа в команде и так далее, — говорит программист Chucklefish Том Коксон. «Игровые джемы — отличный способ практиковать это, особенно если они командные или налагают тематические или временные ограничения». Что бы вы ни решили сделать, доделайте. Звучит очевидно, но не секрет, что большинство людей, которые начинают создавать игры, на самом деле их не заканчивают.Скорее всего, первая игра, которую вы создадите, не будет хорошей, но суть в том, чтобы научиться завершать проект и двигаться дальше. Вы многое узнаете о разработке игр, создавая больше игр.

Чтобы помочь себе, устанавливайте свои собственные сроки и старайтесь достичь чего-то каждый день, даже если они небольшие. Легко увлечься разработкой игры, но управление временем важно, и, если все сделано правильно, оно может повысить продуктивность и мотивацию. «Мы используем приложения для управления задачами, такие как Trello и Notion, чтобы разделять рабочую нагрузку на управляемые части и следить за задачами друг друга между членами команды», — говорит маркетинговый стратег Chucklefish Кэти Эллис.«Очень полезно иметь очень наглядный список дел, с которым вы можете связать рабочие ресурсы и документы, и очень приятно перетаскивать эту задачу в раздел« Завершено »в конце дня».

Дело не только в том, что вы делаете … но и в том, чего вы не делаете.

Люди всегда говорят о том, что вам следует делать, но есть много вещей, которые вам не следует делать . «Игнорирование деловой стороны разработки игр — распространенная ошибка, — говорит продюсер Chucklefish Рози Болл.«Это может показаться проблемой, когда все, что вы хотите сделать, это подумать о своей потрясающей игровой идее, но наличие нескольких важных процессов, таких как бизнес-план, контракты между членами команды и задокументированные роли и обязанности внутри команды, может помочь избежать серьезные головные боли в дальнейшем, особенно если игра станет успешной ». «Не следуйте тенденциям и избегайте многолюдных жанров, — говорит Сорет. «Есть десятки жанров, от которых сегодня почти отказались, и десятки аудитории жаждут большего количества контента.Просто посмотрите на разнообразие игр [в прошлом], вы увидите, что многие из этих ниш нужно заполнить. Выберите один и поднимите его на новый уровень с помощью современной физики, визуальных эффектов и повествования ». «Избегайте молчания», — говорит Вассер. «Делитесь своей работой, разговаривайте со своей аудиторией, будьте открыты.

«Самая большая проблема — справиться с огромной нагрузкой и довести ее до конца»

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

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

Какое программное обеспечение может помочь мне начать работу?

  • Unity — игровой движок
    Вы можете выбрать любой другой движок, но Unity, пожалуй, самый популярный движок для инди-разработчиков.Он позволит вам создавать как 2D-, так и 3D-игры и предлагает широкий набор инструментов и функций.
  • GIMP — Art Program
    Это отличная программа высокого качества, которая выполняет ту же работу, что и Adobe Photoshop, и позволит вам безболезненно создавать свои собственные текстуры, фоны или 2D-спрайты.
  • Blender — 3D Modeller
    Если вы хотите создать трехмерную игру или игру с трехмерными элементами, то это программное обеспечение, первоначально выпущенное 20 лет назад, позволит вам не только создавать трехмерные модели, но и анимировать их.
  • LMMS — Music Creator
    Это позволит вам создавать свою собственную музыку и звуковые эффекты, которые вы можете импортировать в Unity. Вам даже не понадобится клавиатура, но вам понадобится соответствующее оборудование.
  • Wwise — Audio Program
    Это очень доступное программное обеспечение используется во многих успешных играх и используется для управления звуком. Например, вы можете моделировать звуковую среду и микшировать треки в реальном времени.

Это утомительно … и вам нужно, чтобы вашу игру заметили

«Я думаю, что большинству разработчиков трудно быть замеченными среди массы производимых игр», — говорит Сорет.«Вы должны найти оригинальный ракурс, предложить что-то другое. Другая очень сложная часть состоит в том, что для создания игры нужно не , а только . Вы создаете компанию, создаете команду, , затем , вы создаете игру. Эти три задачи масштабны и взаимозависимы. Вы должны запачкать руки в каждом аспекте производства, и вы должны хорошо в этом уметь. Сложно взвалить на свои плечи. Это утомительно и утомительно, но также захватывающе в том смысле, что никогда не бывает скучно, всегда есть что-то новое и интересное, над чем можно поработать.”

Это то, что вы можете использовать в своих интересах для повышения заметности. «Не уклоняйтесь от своей истории разработки, — объясняет менеджер по продукту Chucklefish Том Каткус. «Одна из лучших особенностей инди-игр — это то, что игроки узнают, кто их делает. Это отлично подходит для того, чтобы заинтересовать игроков вашим проектом, но вы можете использовать ту же доступность, чтобы издатель узнал, кто вы ».

Прочтите мелкий шрифт при подписании контрактов.

Конечно, иметь издателя очень удобно, но если вы делаете все возможное, чтобы вас заметили, он может вам даже не понадобиться.При этом, если вы в конечном итоге обнаружите, что у вас есть возможность публикации, подготовка поможет вам в долгосрочной перспективе. «Никогда не отказывайтесь от своего IP и убедитесь, что у вас есть выход в контракте на случай, если разработка пойдет не так», — говорит Сорет. «Кроме того, подумайте о том, чтобы искать инвесторов для участия в вашей компании, а не просто обращаться к издателям. Издатели заинтересованы в подписанном ими проекте, а инвесторы сосредоточены на развитии вашей студии и долгосрочной устойчивости. Это другой мир, он устрашающий, но, возможно, оно того стоит.

«В любых деловых отношениях то, что конкретно указано в контракте, важнее, чем что-либо другое, — объясняет Вассер. «Многие разработчики на самом деле не ценят, не понимают и не хотят беспокоиться о специфике контрактов, поскольку они в некотором роде противоречат творческому процессу, но это может серьезно их укусить позже. Если это важное соглашение, попросите юриста его обсудить. Кроме того, все можно обсудить ».

«Программа ID @ Xbox — отличный способ сделать это [создание игр для Xbox One].Принятые в нее разработчики получат два бесплатных набора средств разработки и доступ к архитектуре системы ».

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

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

.

Leave a Comment

Ваш адрес email не будет опубликован.