Возможно, материал будет интересен всем тем, кто реально задумывается о создании своей игры, читает что-то, но до сих пор ничего не начал, ничего не сделал, ни за что не взялся, и в поиске инструментов, языков программирования, движков и других тулз по созданию игр.
Расскажу немного о создании игр, как их делать и что использовать для этого. Вопросы и ответы в конце возможно помогут Вам. Про лайки не забываем, комменты также оставляем.
Вот кто не хочет делать игры? Создание игр очень весёлый и занимательный процесс, что самое интересное, Вы сможете с этим играть в дальнейшем и в процессе создания, что сами сделали с тем и играем. Вся работа одна сплошная игра.
А если при этом Вы сделаете отличную игру, которую захотите показать миру, сможете на ней ещё и зарабатывать очень большие кучи денег.
Прекрасно! Итак, давайте создадим игру! Хорошо, с чего бы нам начать?
Бум, и мы уже прямо там! Как раз там, где большинство людей и застряли при желании делать классную игру. И самое главное, из-за огромного количества очевидных вещей, таких как, где же начать создавать игру, как начать, с чего начать, чем начать, а что за игра вообще? После таких вопросов мы начинаем гуглить по полной программе, читать различные блоги, читать различные статьи, смотреть тонны видеоконтента на Ютубе. Очень много информации, везде советы и решения, разные движки, программы, фреймворки и многое другое, но что делать с этим дальше, совсем непонятно.
Вы можете начать задаться вопросом, почему же настолько трудно начать делать игру? Отлично, я сам также думаю, и понимаю, происходит такое из-за двух причин.
1. Невероятно огромный выбор всего в тот момент, когда приходит осознание сделать игру. Вам доступно множество языков программирования, каждый со своим списком движков и графических фреймворков, которые Вы можете использовать с языком. Большое количество выбора для тех вещей, которые Вы можете использовать действительно для создания игр. Все это на самом деле действительно пугает.
2. Предположение. Хорошие и плохие предположения о том, сколько потребуется сил и времени, чтобы сделать игру. Например, первое предположение: «Вы должны быть мега умным и при этом также быть мастером в программировании по созданию игр», но с другой стороны, второе предположение, игра «Minecraft была создана всего лишь ОДНИМ человеком, как же тогда это может быть трудно?».
Эти две вещи, объединённые вместе, создают по-видимому вертикальный утёс, на который необходимо подняться с самого начала, с самого старта. Поверьте, я точно знаю о чём говорю. Было время, когда я сам застрял на этом, было много вопросов, что мне делать, как делать, с чего начать, какую программу выбрать? Прошёл примерно один год с того момента как появились мысли, и до момента, когда я на самом деле начал что-то делать. Год или даже чуть больше.
Итак, где я тогда начинал? Как я узнал, что мне надо, чтобы сделать игру?!
Ответ может казаться идиотским и наивным. Но я всё-таки расскажу Вам.
Необходима сложная вещь, необходимо совершить супер сложный шаг, нужно - ПРОСТО НАЧАТЬ ДЕЛАТЬ! Хоть где, хоть как, хоть что-то в этом направлении! Совсем не важно какой язык программирования или движок, или фреймворк Вы выберете для начала. Просто начать что-то делать. Не сидеть, и просто не читать, как сделать игру. Это самое важное!
Вы можете сказать, что это - чепуха. Одни языки программирования медленнее, чем другие. Мне нужно как можно больше производительности, которую я могу выжать из языка программирования или движка. Если я сделаю свою игру на «медленном» языке программирования, я буду биться об стенку, и в итоге придётся начинать всё сначала на более быстром языке программирования. Куча времени будет выброшена зря.
Во-первых, ...
НЕТ. Вы не потеряете нисколько времени, используя «медленный» язык программирования.
В данном случае это звучит, как: я слышал, что автомобили с автоматической коробкой передач - медленнее, чем автомобили, с ручной коробкой передач. И в итоге, чтобы получить самое быстрое время на круге, мне нужна ручная коробка передач. Хорошо, но, если Вы не знаете, как управлять тем или другим автомобилем, Вы будете в любом случае с медленным временем на круге, несмотря ни на что.
Производительность игр, в большей степени, зависит от реализации игры самим программистом, а не от языка.
Во-вторых, ...
С началом создания игр, Вы получите невероятно ценные знания в программировании вообще, и самое главное, знания о том, как работают игры «под капотом». Что сработает в Вашей игре, а что не сработает. Как долго Вы готовы терпеть до того момента, чтобы вещи были реализованы правильно. Это даст Вам общие понятия, что на самом деле требуется для создания игр.
Эти знания, будут с Вами в любом случае в нужный момент, независимо от того, какой движок или язык, или фреймворк Вы используете или будете использовать в дальнейшем.
Коротко говоря... Подытожим.
Выбирайте любой язык программирования, и начинайте делать игру. Есть только одно плохое решение, которое Вы можете сделать. И это решение - не начать делать вообще ничего.
Далее я отвечу на несколько общих вопросов с которыми я сталкивался. И которые помогут Вам в дальнейшем при старте создания игр.
Вопросы и ответы:
*В. - вопрос. *О. - ответ.
В. Хорош ли движок Unity для разработки игр 2Д?
О. Да, просто начните уже делать игру, чёрт побери.
В. Нужно ли мне использовать движок такой как Unity или Unreal, чтобы создавать игру?
О. Нет. Вам не нужно.
В. Хорошо, если мне не нужен движок для создания игр, какой язык программирования мне использовать?
О. Неважно какой, просто возьмите какой-нибудь один и начните. Это в прямом смысле не важно.
В. Должен ли я начинать с создания маленьких игр? Я слышал, что создание больших тяжёлых RPG игр для моей первой игры плохая идея.
О. Вкратце говоря, это неважно. Вы всё равно не закончите ни ту, ни другую игр в первую очередь. Вы заскучаете с маленькой игрой, и будете перегружены с большой. Поиск правильного окружения, что именно выбрать, и что требуется, придёт со временем сам. А пока, на этом длинном пути Вы изучите множество разных вещей, программ, языков, фреймворков или чего-либо ещё.
В. Нужно ли мне уметь программировать, чтобы сделать игру?
О. Да. Вам нужно как минимум знать основы программирования.
В. Хороша ли программа GameMaker YoYo Games для создания игр?
О. Да. Просто начните уже делать игру, чёрт возьми.
Итак, если на самом деле всё неважно, когда речь заходит об инструментах, с которыми нужно делать игру, что же тогда важно?
На самом деле есть только две вещи которые очень важны:
1. Готовность к изучению нового и много. Понимаете, Вам на самом деле придётся изучать очень и очень много до того, как Вы на самом деле что-то создадите. Создание игр очень трудоёмкий и длительный процесс. Но ВЫ СМОЖЕТЕ ЭТО СДЕЛАТЬ.
2. Запаситесь драйвом, желанием, позитивом и другими вещами этого плана, чтобы придерживаться одного понимания. Вам необходимо преодолевать различные преграды на своём пути. Процесс сложный и длительный. В своём рабочем процессе скорее всего, Вы будете многое портить из-за отсутствия опыта, и Вы должны будете всё это исправлять или восстанавливать. Что-то, что скорее всего Вы, к примеру, удалите в своём коде игры. Удалите то, над чем Вы работали две недели, месяц или более.
Вот и все части создания игры, весь процесс того, как начать, за что взяться, с чего начать, какие инструменты использовать для создания классных игр.
Запаситесь драйвом - это самое важное в создании игр. Драйв - это то, что будет Вас двигать вперёд, и должно двигать только вперёд. Это очень важно.
Просто начните делать игру любым способом, каким Вы это хотите делать. В конце концов, Вы всё равно дойдёте до конца, если будете придерживаться драйва и простых правил - постоянно делать игру, изучать программирование, и процесс создания игр в целом.
ВЫ ТОЧНО ДОЙДЕТЕ ДО КОНЦА. Я ВАМ ОБЕЩАЮ.
Желаю Вам всего самого приятного, желаю наполниться энергией. Изучайте, работайте, делайте, создавайте.
В результате у Вас получится отличная игра.
И да, если Вам важен момент получения денег от процесса - Вы сделаете классную игру, на которой можно заработать очень много денег, Вы сможете купить себе яхту дом и всё что сами себе пожелаете.
Материал подготовлен под вдохновением одной записи на Реддите в буржнете, частично перевод, частично свои добавки. Материал мне понравился, материал очень полезный для новичков, желающих начать в мире разработки игр, и я столкнулся примерно с теми же проблемами, когда решил изучать программирование, изучать геймдев и тому подобные вещи.
Добавка для тех, кто решит выбрать какой-то движок для игр. Если выберите «мейнстрим» Unity - то язык программирования там используется C Sharp, а если пойдёте по пути сложных топовых игр и решите остановиться к примеру, на Unreal Engine - тогда нужно осваивать C++.
Я вообще в своё время начал с Python, PHP, JS и других вещей - использовал для веб-разработки сайтов.
И да, игры можно писать почти на чём угодно, было бы желание и силы. Создание игр, даже простых, требует достаточного количества времени и сил. А если это полноценные Инди игры, как в большинстве случаев у желающих их делать с нуля и учиться, игры для мобильников, Вконтакте или настольных, тогда Вам придётся освоить и смежные направления - такие как 3D и(или) рисование. Озвучка, свет, анимация, спецэффекты и ещё тонны всего.
Для всего этого есть различные инструменты, и чаще всего они не входят в движок по созданию игр. Всё это отдельные инструменты, которые Вам также придётся изучать и осваивать.
Как многие пишут в интернете. В среднем для обучения и создания «чего-либо или чего попало» в мире игр уходит 1-2 месяца. Для создания чего-то, что не стыдно показать людям - от 1 до 3-х лет. Для создания хорошей штуки, для заработка, для души, для качества от 3-х лет.
А для тех, кто решил, что раз и сразу сделает так называемые топовые AAA (triple A) игры и всё это за пару недель - ошибается, понадобится мощная команда из разных специалистов высшего уровня, или минимум 18 рук и минимум 4 головы)))), и конечно же большие финансовые вливания.
Желаю Вам удачи в создании игр. У Вас всё получится, ставьте реальные цели, делите их на реальные этапы работы, и достигайте их, всё будет супер.
В комментах напишите, чего добились Вы в мире геймдева, что уже сделали, где застопорились, какие штуки юзаете в процессе создания игр…и вообще, все что понравилось, на что обратили внимание, какие бы дали советы по созданию игр различной сложности с нуля и так далее для всех интересующихся этим.
Далее представлю несколько каналов на Ютубе, на которые лично я подписан в ру сегменте именно, какие-то каналы я смотрю сам, какие-то просто находил, и также из буржнета на английском языке. Так что дерзайте, выбирайте.
А вообще, контент такого плана, как и по вопросам программирования, лучше искать на английском языке в буржнете. Не знаете английского, изучите, в мире программирования и создания игр Вам будет сложнее, без знания английского.
Каналы на русском языке:
Дэн Разработчик игр из России ARTALASKY CG: https://www.youtube.com/user/SkybladeRus/about.
Хауди Хо™ - Просто о мире IT: https://www.youtube.com/channel/UC7f5bVxWsm3jlZIPDzOMcAg.
Институт марксизма-ленинизма: https://www.youtube.com/channel/UC4d4FQlX2zurgNmRAr2QDkg.
Flatingo. Разработчик игр: https://www.youtube.com/channel/UCy8aONm_W21gtK2D8KKnINA.
Создание игр на Android: https://www.youtube.com/channel/UCoWBXsP0iKJDQ2FXff4NaYw.
Unreal Engine Rus: https://www.youtube.com/channel/UCLbkGIcYJxxL0tciH9RVebg.
TheGameDev: https://www.youtube.com/channel/UCmdqVd7FaZiAIfZp-y5qSYQ.
Каналы на английском языке:
Brackeys: https://www.youtube.com/user/Brackeys.
Dani: https://www.youtube.com/channel/UCIabPXjvT5BVTxRDPCBBOOQ/.
Sebastian Lague: https://www.youtube.com/user/Cercopithecan/.
Sykoo: https://www.youtube.com/user/SykooTV.
Ubisoft: https://www.youtube.com/user/ubisoft.
Reuben Ward: https://www.youtube.com/channel/UCpsN2TfWGmun4peN2IPgcKg.
Game Maker's Toolkit: https://www.youtube.com/user/McBacon1337.
TheNewBoston: https://www.youtube.com/user/thenewboston.
Доп. сайты по программированию и другое:
Программирование, разные языки, уроки на русском, также есть канал на ютубе от создателя: https://metanit.com/
JavaScript уроки на русском: https://learn.javascript.ru/
На иностранном языке:
Платформа Юнити для создания игр на языке C Sharp: https://unity.com/ru.
Движок для создания игр на C++ со встроенной системой «блюпринтов», для желающих «программировать визуально»: https://www.unrealengine.com/.
➖➖➖
Всем бобра и добра!!!