С чего начинать?
Прежде всего нам нужно определиться с движком нашей игры. Это может быть как Unity, так и Unreal Engine. Долго мусолить не буду: Unity - 2D / 3D игры, UE - 3D игры с отличной графикой. Но так как это UnityHub, то и использовать мы будем Unity. Обязательно посмотри обзоры на эту тему!
Графика
Про 3D графику мне нечего сказать, а вот про 2D есть. Можно использовать следующие программы:
- Photoshop (многие работают на нем)
- Pixel Studio (тоже нормально)
- Aseprite (наверное лучший выбор)
По своему опыту скажу, что Photoshop это скорее для более продвинутых пользователей, тех кто хочет выжать сочную картинку, покрутить насыщенность и т. п. Лично я использую Aseprite, так как интерфейс там легкий, анимации делать просто, а лагать будет только если использовать картошку вместо ПК и, то вряд ли. А Pixel Studio лично не пробовал, советую посмотреть обзоры по нему и выбрать уже то, к чему душа лежит. Но знайте: главное в играх совсем не графика, но и забивать на нее не стоит!
Идея
Сделать игру без идеи так же возможно, как и дышать в вакууме. Откуда же эту идею взять? Вдохновляйтесь. Прежде всего вы делаете игры, а для того, чтобы сделать игру нужно играть в игры. Нельзя сказать, что соль, соленная не попробовав её. Я вот, например очень сильно вдохновился игрой Red Dead Redemption 2 (советую пройти) и в итоге сам захотел сделать нечто похожее, но только в 2D стилистике. Так же вы можете просто почитать книжки, это тоже помогает. Вот список хороших игр, откуда можно начерпать вдохновение:
- Red Dead Redemption 2 (best game ever)
- Death Stranding (шедевр без преувеличения)
- Beholder (имба)
- Papers Please (прикольная)
- Undertale (прикольная)
- Braid (крутяк)
- Rim World (советую)
- Hollow Knight (шедевр)
- Blasphemous (not bad)
- Stardew Valley (прикольная)
- Party Killer (советую)
- Choice of Life (прикольная)
- THOU (best game ever)
- Baldurs Gate 3 (best game ever)
- Watch Dogs 2 (советую)
Механики
Очень советую посмотреть этот видеоролик (https://youtu.be/hq5fofOLI6w?si=2WA_VuYq_cV2BPkq), очень помогает. Выпишите себе на листочек те механики, которые вам будут нужны, а по мере приближения к концу создания видеоигры некоторые из них будут отпадать или меняться.
Искусственный Интеллект
В конце концов используй же ты ИИ. Есть куча интересных сайтов, которые дают тебе возможность с ним пообщаться. Если есть вопрос, на который ты не можешь найти ответ, то просто задай его ИИ, у него есть доступ почти ко всему интернету не только на русском языке, но и на других. Составь для него правильные промты и получишь тот ответ, который тебе нужен. Вот некоторые хорошие нейросети:
- Copilot
- Chat GPT
- Gemini (плохо генерит код)
- Yandex GPT
Записывай всё
У памяти человека есть два плохих свойства: пропадать и изменяться. Если первое ты сможешь заметить, то со вторым бороться без записных книжек очень трудно. Ты даже не заметишь этого. Поэтому всегда все записывай: на диктофон, в тетрадь, в блокнот, на компьютер. Держать всю информацию в голове на одну тему довольно тяжело. Мне вот иногда приходят хорошие идеи, механики, способы решить ту или иную проблему на прогулке. Из этого вытекает следующий совет: ГУЛЯЙ.
Если не можешь долго исправить тот или иной баг, то возьми и прогуляйся, покушай, поиграй, но самое главное не думай о баге. Позволь себе взглянуть на эту проблему свежими мозгами и ты все исправишь.
Насчёт записей. Я свою первую игру делал по записям из моей тетради. Утром черчу карту, а вечером её реализовываю. На бумаге гораздо проще размахнуться и придумать что-то, чем на компьютере.
Код
Прежде чем написать код для какой-нибудь опции опиши у себя в голове (а лучше на бумаге) то, как именно это реализовать. Допустим элемент рыбалки для 2D:
- Подход к невидимой области для рыбалки
- Проверка нажатия кнопки
- Проверка наличия удочки в инв.
- Проверка наличия наживки в инв.
- Анимация заброса лески в воду
- Анимация бульканья воды
- Рандомный счетчик до поимки рыбы
- Анимация бултыхания рыбки
- Добавление рандомной рыбки в инв.
Оптимизация
Не стоит конечно же забывать про оптимизацию в Unity. Не делай лишних невидимых объектов на сцене; не делай кучу папок, если не требуется; оптимизируй сам код; не делай куча разных картинок, а совмести всё в один спрайт.
Название
Не делай слишком длинное (4+ слов) название, оно должно быть запоминающимся.
Полезные сайты для разработчиков:
1) Milanote
Типа как блокнот, но только на компьютере и в тысячу раз удобнее. Сайт бесплатный.
2) Lospec
Сайт для того, чтобы посмотреть новые палитры для пиксель артов или просто вдохновиться чьим-либо рисунком.
3) Learn Anything
Поможет выучить тебе все что угодно. Ссылка - https://learn-anything.xyz
4) Книги для кодеров
Огромный список книжек для кодеров на Git Hub - https://github.com/EbookFoundation/free-programming-books/blob/main/books/free-programming-books-ru.md
Конец статьи
Подведя итоги скажу, что я пытался очень вкратце рассказать о том, что тебе поможет сделать игру. Скоро или не очень скоро будет опубликована вторая часть этой статьи, где мы затроним музыку, платформу для публикации, монетизацию и т.д. Если понравилась статья, то обязательно поставь лайк, так как это реально мотивирует.
Адаптируйся. Преодолевай. Импровизируй.
очень интересная статья, многое взял на заметку, спасибо. хотел бы поинтересоваться, как абсолютный новичок. как разработчики придумывают код, находят нужные функции, встроенные в движок и т.д. все мои идеи разбиваются о непонимание, как запрограть это)