Игры может делать каждый

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

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

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

Четкий путь

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

Скриншот для затравки<br /> Максим Пикалов<br />
Скриншот для затравки
Максим Пикалов

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

Английский язык

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

GIT

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

Скачайте гит, запустите git bash и выполните команды git config.

$ git config --global user.name "Your Username" $ git config --global user.email yourusername@mail.com

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

Окей, я сделал, а как пользоваться то?
Максимально простой гайд со схемами.

Чтобы лучше разобраться, попробуйте внести изменения в проект, отправить их на сервер и посмотреть в GIT GUI, там же в папке правой кнопкой мыши нажать и выбрать.

Вы увидете все что вы добавляли, время, и ваши git commit -m «сообщения». А так же сможете там же откатиться к предыдущим версиям.

Движок

Тут ты вы уже сами можете выбирать, какой. Хотите делать размеренно для себя и в удовольствие вот вам Godot.

Godot

Игры сделанные на Godot.

Один из лучших урок по Godot. Урок полноценный, изучив его можете приступать к реализации своей идеи.

Российский тг канал по Godot, если информации в интернете по вашему вопросу нет, можно писать сюда.

Unity

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

YouTube каналы.

Emerald Powder Отличный рускоязычный канал по Unity.

Русскоязычный тг канал о Unity.

Общий план по движкам

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

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

3. Уметь писать код необязательно.

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

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

Графика

Нам нужно разобраться, хотим ли мы рисовать?

Нет

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

Да

Все указанные советы, даются человеком, который не умеет рисовать от руки. А если вы умеете, вам будет только проще!

3D

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

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

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

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

2D

Тут я условно разделю на два стиля, кому что ближе.

PixelArt

Пример графики https://ru.wikipedia.org/wiki/Sega_Technical_Institute
Пример графики https://ru.wikipedia.org/wiki/Sega_Technical_Institute

Тут достаточно хороший материал для старта.

А это я просто делюсь с вами кладом, сама подборка невероятно вдохновляет. Так она еще и супер информативная.

Для рисования рекомендую Aseprite (опенсорс, но билды платные, там где надо найдете).

Бесплатно и в браузере.

Vector

Пример графики<br /> https://ru.wikipedia.org/wiki/Angry_Birds
Пример графики
https://ru.wikipedia.org/wiki/Angry_Birds

Тут я однозначно рекомендую Inskape. Субъективно. Мне он нравится за то, что он легкий, быстрый, простой и удобный. Но в нем нельзя анимировать и это существенный минус. Кроме него есть куча других редакторов. Illustrator по которому есть миллион гайдов в сети и на русском в том числе и Corel Draw не менее известный.
Подход такой же, представляете, что вам нужно нарисовать для вашей игры — ищете туториал на похожую или эту тему. Советую опеределиться со стилитикой вашей игры в самом начале, чтобы не прыгать потом от стиля к стилю.

Отличный канал по туториалам inkscape

Музыка

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

Мы не хотим вникать

Можно найти бесплатную музыку, например, тут.

А тут уже пишем свое. Тыкаем ноты наугад до тех пор пока не понравится, экспериментируем с темпом, высотой нот, инструментами.

Мы хотим проникнуться

Тогда выбираем DAW, почти все они платные, но я рекомендую Ableton или Bitwig.

А тут целый список различный бесплатных DAW.

Все тоже самое. Гуглим как писать то, что вам нужно для игры. Если не находите, ищите то, что угодно другое, чтобы понять как работает DAW. Ну и один из моих любимых сайтов с бесплатными VST. Это плагины для обратотки звука.

Полезные материалы

Марктетинг инди игр

Сторителлинг

Последенее напутствие

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

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

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

127127
45 комментариев

 Уметь программировать необязательно.

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

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

По этому, уметь программировать - обязательно. Знать синтаксис языка программирования и писать код - необязательно. Как то так.

49
Ответить

Я полностью согласен! Но я опперировал общим понятием о программировании, то есть писать код), исправил, чтобы было верно

7
Ответить

Вот допустим я хочу написать программу нодами(ue4), не подскажите где мне искать подходящие курсы?

Ответить

Программировать легко. Где только художника искать ( ͡° ͜ʖ ͡°)

12
Ответить

Комментарий недоступен

8
Ответить

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

4
Ответить

Комментарий недоступен

2
Ответить