С чего начать создание своей игры
Разработка игр. С чего начать?
Что должны учитывать будущие разработчики игр? С какого языка начать обучение? К чему стремиться? На кого равняться? И что необходимо сделать в первую очередь?
Большинство любителей рок-музыки рано или поздно берут в руки гитару. Фанаты спорта страстно мечтают о выходе на футбольное поле, баскетбольную площадку или теннисный корт. Ну а те, кто совершил сотни угонов в GTA, провел десятки часов в компьютерных клубах за Counter-Strike или достиг немалых успехов в MMORPG, наверняка задумываются о карьере разработчика игр.
Проблема в том, что данному направлению обучают в считанных учебных заведениях. Посему большинство разработчиков игр – самоучки, некогда сами составившие учебную программу. Но какие нюансы они учитывали? С чего начинали и к чему стремились? Какой язык учили в первую очередь? На эти и другие актуальные вопросы мы и постарались ответить.
К чему стремиться?
Перед походом в магазин вы составляете список покупок (хотя бы в голове). Перед поездкой в другой конец города – прокладываете маршрут.
Ну а перед тем, как обучаться разработке игр, целесообразно задаться вопросом: чем именно вы хотите заниматься? Создавать мобильные приложения или браузерные игры? Трудиться в крупной компании или маленькой? Профессионально заниматься разработкой игр или посвящать этому свободное от работы время? И если первое, то что интересует вас больше: создание интерфейса, отшлифовка геймплея или написание скриптов?
Правильная постановка цели поможет сэкономить уйму времени и сил. Кроме того, позволит достичь конечного пункта кратчайшим путем. Без риска сойти с дороги или угодить в болото.
Какой язык учить?
Кроме того, от цели зависит и ответ на животрепещущий вопрос: с какого языка программирования стоит начинать?
Так, будущим разработчикам игр вроде Minecraft и мобильных приложений под Android стоит обратить пристальное внимание на Java. Для начала советуем пройти интенсив “Основы Java-программирования”, тем более, что это бесплатно. Тем, кто заглядывается в сторону iOS – на Objective-C.
Для браузерных игр порой хватает знания Ruby-On-Rails. Для совсем маленьких и простых временами достаточно HTML. В производстве Flash-игр используется ActionScript, а для написания скриптов любой сложности вам понадобится JavaScript или, возможно, не столь распространенная Lua.
Для создания же небольших консольных игр требуется знание C#.
Что до наиболее крупнобюджетных игр (так называемого класса AAA), то большинство из них оснащены своим или заимствованным у коллег “движком”. Нередко, впрочем, весь “движок” или его большая часть написана на C++. Именно этот язык использовался при создании множества известных “игрушек” – от Doom 3 и Call Of Duty до FIFA и The Sims. В то время как классика вроде Quake была написана на C.Впрочем, в освоении C++ есть и загвоздка – чрезмерная сложность. Недаром ведь говорят, что браться за C++, не зная других языков, – все равно, что начинать изучение математики с линейных уравнений.
Достаточно ли одного языка?
Одна из прелестей программирования – возможность постоянного саморазвития. В разработке же игр (особенно крупных) самосовершенствование, в том числе изучение как можно большего количества языков, – не прихоть, а жизненная необходимость.
Так, опытные разработчики, трудящиеся на благо гигантов игровой индустрии, нередко сталкиваются с необходимостью поочередно писать на 7-8 языках.
При этом, помимо вышеуказанных языков, им приходится изучать, к примеру, Python либо и вовсе SQL (как вы понимаете, для создания баз данных).
Поэтому, если вы решили связать судьбу с производством крупных игр, будьте готовы стать “полиглотом”. Кроме того, чем больше языков вы освоите, тем более интересные и разнообразные задачи перед вами поставят. Ну и, конечно, шансы на получение работы мечты заметно возрастут.
С ЧЕГО НАЧАТЬ?
Перед тем, как совершить кругосветное путешествие, нужно научиться ходить. Ну а перед серьезным игровым проектом необходимо попробовать силы в чем-то менее значимом.
Практически все опытные разработчики вне зависимости от регалий и таланта начинали с небольших приложений: настольных игр, вариаций известных “игрушек”, простеньких “флэшек”. Тогда они не думали о крупных выставках вроде E3, а накапливали бесценный опыт.
Почему бы не последовать их примеру? При этом не обязательно писать архисложный код. Для дебюта достаточно использования специальных программ для создания игр (к примеру, Game Maker). Ведь даже благодаря несложному инструментарию вы значительно облегчите себе жизнь.
Во-первых, в миниатюре поймете логику и структуру практически любого игрового приложения. Во-вторых, набьете шишки, которые заживут во время перехода к серьезным проектам. Наконец, в-третьих, обогатите портфолио.Ведь даже простая “игрушка” требует массу времени, терпения и творчества для выдумки концепции, написании кода и устранения багов. Кроме того, показывает, что с производством игр вы знакомы не только в сухой теории.
Что брать за ориентир?
Тот, кто мечтает стать писателем, прочитает сотни книг перед тем, как напишет хотя бы одно слово. Мастера игры на фортепиано на зубок знают лучшие произведения Штрауса, Шопена и Бетховена. Известные же художники перед крупными выставками наизусть заучивали историю искусств.
В разработке игр действует тот же принцип. Вы не сможете развиваться в вакууме. Поэтому играйте, вдохновляйтесь мастерами и, как губка, впитываете лучшее. При этом старайтесь смотреть на приложения не глазами “геймера”, а взором разработчика.
Иными словами: транспонируйте игру.
Задумайтесь, почему в данный момент времени “бот” побежал налево, а не назад? Из-за каких факторов меняется сила и точность удара в спортивном симуляторе? Как создать “эффект усталости” при долгом беге персонажа? Как сделать так, чтобы во время дождя игрок слышал звук капель, а не свиной визг? В общем, проникайте в суть. Постарайтесь воссоздать в голове алгоритмы, с которыми сталкиваетесь во время игры. Поверьте, подобный конструктивный подход поможет вам в будущей нелегкой, но чертовски увлекательной карьере разработчика игр.
Александр Мороз
Как начать разрабатывать игры даже если до этого вы были бухгалтером
До того как я стал разработчиком игр, я (да и все в моем окружении) считал себя дизайнером сайтов. Не плохим, кстати, но дизайнером сайтов. Профессия, которая почти никак не используется в разработке игр.
Есть такой стереотип — когда кто-то говорит, что он в разрабытавает игры без команды, все сразу представляют его программистом. На самом деле, стереотип не так далек от правды: скорее всего, разработчик, описанный выше, действительно умеет программировать, но программистом он может себя не считать.
После одного игрового проекта со стримом всего процесса разработки мне часто пишут начинающие разработчики, что-то спрашивают, что-то показывают и на что-то жалуются.
Недавно мне пришлось влезть в спор двух ребят, где темой спора было: “Что круче знать 3д-моделирование или программирование, если собираешься разрабатывать игры?”. Влез к ним в спор с предложением сделать первый шаг из схемы, что родилась в процессе участия в игровых проектах и создания своих.
Шаг 0. Станьте разработчиком игр
Именно первый, а точнее даже “нулевой”, шаг сделает Вас сразу разработчиками игр.
Это не проекты, которые, может, уже есть у Вас за плечами, не навыки, котороми Вы, может, владеете, а простой, но очень важный шаг: скажите себе, а заодно и всему миру, что вы разработчик игр.
Как только у вас уляжется в голове ответ на вопрос, чем вы занимаетесь — разработкой игр, — вы сразу станете для себя и окружающих разработчиком игр.
Как это сказать себе и другим?
Уверен, что у вас уже есть какая-то профессия. Также я уверен, что Вы каждый день посещаете сайты/форумы, связанные с вашей профессией, читаете блоги и, может, даже книги. Первое, что надо сделать, чтобы стать разработчиком игр:
- Начать посещать сайты, связанные с тематикой игр и разработкой игр.
- Подписаться на блоги разработчиков, творчество которых вам нравится.
- Купить пару книг в “киндл” на амазоне, например, о игровом дизайне.
Все, вы разработчик игр. Действительно, элементарный шаг вам может дать доступ к столь “закрытой” профессии как разработчик игр.
Правда, без опыта и регалий, но никто (ни вы, ни окружающие) уже не оспорит, что вы разработчик игр.
Шаг 1. Найдите себе применение как разработчику игр
Теперь, когда Вы смело можете считать себя разработчиком игр, надо найти себе применение. Как писатели могут пребывавать в двух состояниях: ищут идею книги, пишут книгу, — так и разработчики: ищут проект (идею), делают проект.
Бывает, конечно, еще и поддерживают проект, но лично я его всегда объединяю с процессом поиска нового.
Слова “найти проект” для каждого разработчика игр значат разное, вот список популярных способов поиска проектов:
- найти проект, близкий по духу, с интересной идеей, проинвестировать в него свои навыки и/или деньги, а, может, какие-то еще ресурсы;
- взять пару игр и сделать из них микс;
- сделать клон игры, что может принести хорошую прибыль;
- придумать гениальную идею и попробовать найти энтузиастов;
- сделать ремейк любимой игры; и множество других способов.
Выйти из состояния “поиска проекта” нужно как можно быстрее, и желательно выйти в состояние “делаю проект” и делать проект с шансами на успех: релиз и популярность. Этот этап — первая проверка для начинающего разработчика. Сделать выбор при полном отстутствии опыта очень сложно, но, к счастью, любой выбор принесет нам опыт.
Вот некоторые советы для прохождения этого шага:
- Начните что-то свое. Свое от идеи до реализации в одиночку. Даже если у вас есть навыки программирования или вы сносно рисуете, — не вступайте в существующие проекты. Сделайте что-то небольшое, не требующее серьезных навыков.
Например, я сделал маме подарок на НГ — 3д-игру по психологической методике:
У меня не было опыта разработки на C# и программировать я особо не умел (немного знал python) и никогда до этого не моделил. - Скажите себе кодовую фразу: “Если кто-то смог, я тоже смогу”. Как бы вы ни были готовы к игровому проекту, всегда будет задача, с которой вы никогда не сталкивались. Например, даже у опытных программистов программного обеспечения, часто нет опыта создания шейдеров. Скажите себе кодовую фразу и учитесь по ходу.
- Найдите себе единомышлеников. Мне в моем развитии очень сильно помогли: скайп-чатик разработчиков социальных игр (теперь уже создатели: Голос Припяти 3D, Tanks Heroes, Contract Wars, Батла и многие другие), а также одногруппники из Scream School по курсу гейм-дизайна. Их успех будет вас подталкивать, а обмен опытом ускорит процесс развития.
- Выберите себе платформу для разработки. Определите платформу, которая вас устраивает. Это может быть, например, Unity — за ее возможности, огромное комьюнити и сравнительно низкий порог входа. Вне зависимости от платформы, станьте ее евангелистом. Это позволит вам наладить коммуникацию с другими разработчиками и быстрее развиваться.
- Не давайте эмоциям взять вверх. Ошибки и неудачи станут вашими спутниками на длительный период, а если вы будете делиться процессом развития с русскоговорящими разработчиками, будьте готовы к тоннам говна большому количеству негативных отзывов. Не позволяйте эмоциям брать вверх: слушайте любые отзывы и предложения, но относитесь ко всему с необходимой критикой. Сохраняйте критичность ума.
Шаг 2. Помогите себе закончить хотя бы ОДИН проект!
Если вы закончили свой первый проект как разработчик игр, скорее всего, вы что-то делали не так. Даже эпилептоид не сможет закончить свой первый проект, а к первому релизу у него в архиве будет пара-тройка (минимум) замороженных проектов. Это нормально. Мы учимся на своих ошибках, а не совершают их только идиоты или те, кто ничего не делают.
Но в какой-то момент нужно будет собрать весь свой опыт, полученный из проб и ошибок, и, наконец, сделать свой первый релиз. У каждого разработчика своя история первого релиза, но у меня есть пару советов, которые обязательно вам помогут:
- Вгоните себя в экстремальные условия, а выходом из них сделайте релиз.
Поставьте себе реальный, но очень сжатый срок на релиз, например, 48 часов или неделю, но спать будете по 4 часа в день. Это даст сильный толчок, заставит оптимально использовать время и сфокусироваться на результате.
- Сжатые сроки Сжимая сроки, не оставляйте себе время на риск. Сжимайте до последнего, пример с 48 часами — хороший.
- Отсутствие сна Полное или почти полное отсутствие сна хороший мотиватор, но не доходите до крайностей. Практика показывает, что даже молодому организму надо давать отдых.
- Менеджмент времени Не стоит выделять много времени на тайм-менеджмент, но не забывайте ставить себе вехи (milestone). Например, скажите себе, что через 5 часов вам надо сделать играбельный прототип.Например, в своем первом 48 часовом марафоне (на нем я только рисовал), я за первую треть времени нашел стиль игры, нарисовал основной, игровой экран и все спрайты врагов. И за оставшееся время сделал 170+ спрайтов анимации и дорисовал интерфейс.
- Конкурсы, особенно мероприятия, типа, HackDays или Ludum Dare, где нет времени на раздумья и надо сразу бросаться в работу, — отличное подспорье для пунктов выше.
- Поставьте себе рамки. Для первого релиза, особено в сжатые сроки, критически необходимо знать рамки проекта. Выпишите себе минимум, что нужен для релиза, и не выходите из него.
По необходимости:
- Урежьте список возможностей Было бы здорово сделать возможность летать на самолетах, но если вы делаете шутер про пехоту, сфокусируйтесь на стрельбе.
- Сократите время игры Вероятно, вы рассчитывали сделать синглплеер на 5 часов игры, но вы останетесь победителем с демкой на 20 минут.
- Уберите часть контента Конечно, дополнительная карта не будет лишней для вашего тактического шутера, но релиз останется релизом даже с одной картой.
- Ищите простые пути. Напоминайте себе, что вам необходим релиз, а не шедевр. У вас остается право на ошибку, но вы потеряли право на заморозку проекта.
- Используйте костыли и хардкод Не стоит фокусироваться на универсальности или производительности кода. Оптимизация тоже подождет. Просто идите к результату.
- Копируйте, а не придумывайте Если с ответом на любой вставший перед вами вопрос возникают трудности, копируйте решение коллег.
- Используйте опыт на 150% Учет сделаных ошибок — это, несомненно, хорошо, но пока вы их совершали, вы собрали багаж наработок. Постарайтесь использовать из него что-то.
- Подключите все ресурсы Если у вас есть друзья, готовые помочь, не отказывайтесь, а если у вас есть денежный ресурс — вкладывайте (покупайте готовые решения, контент и рабочие руки). Ваши вложения окупятся в дальнейшем.
Шаг 3. Сделать полноценный релиз
Когда прошлые шаги позади: релиз за плечами и опыт какой-то уже есть, — хочется, чтобы ваше хобби (не приносящий доход род занятий) переросло в настоящую профессию и источник хорошего, постоянного дохода.
Каждый разработчик понимает, что для этого ему нужен полноценный релиз, не тот (те), что мы получили из второго шага, а полноценный релиз с шансом на успех. Увы, но релиз из прошлого шага нужен только для ощушения победы, а не успеха.
Сделать полноценный релиз — это уже задача с миллионом способов решения, и вы обязательно будете иметь решение к тому моменту, когда у вас появится возможность для его создания.
Но вот некоторые советы для настоящих indie (парней, что живут хардкором и разрабатывают свои игры без инвестиций и денег издателя):
- Делайте проект каждый день. У всех начинающих инди есть занятия, с которыми приходится совмещать разработку. Но не забывайте добавлять хотя бы одну строчку кода или новый спрайт в игру каждый божий день.
Это очень важно, это пункт номер 1.
- Ставьте себе небольшие задачи и старайтесь выполнять их каждый день. Долго открытая задача, например: “разработать систему инвентаря”, может быстро превратиться в “висяк” с очень низким приоритетом.
Поставьте задачу “Интерфейс основного окна инвентаря” и закройте в этот же день, а затем радуйтесь прогрессу.
- Два шага вперед, один в сторону. Какой бы разнообразной вы ни планировали игру, не стоит делать сразу 50 типов врагов и тысячи уровней. Сфокусируйтесь на реализации возможностей игрока, а не способах их проявлений.
Делаете слешэр? — Реализуйте возможность рубить врага, а врагов клонируйте.
- Прототипируйте. Когда вы сфокусированы на настоящем релизе, необходимо отдавать себе отчет, что игра должна быть хорошей. Проверить это можно, прототипируя.
- Вы делаете игру. Не стоит делать из своей игры движок или фреймворк.
Нет, я не про чистоту кода или возможность его переиспользовать. Работайте хорошо, и результат будет хороший. Не стоит реализовывать возможности до того, как поймете, что они действительно необходимы вашей игре. Например, если вы не уверены, что будет возможность менять цвет одежды героя, не стоит рисовать маску для смены цвета в шейдере. Убедитесь, что ваш дизайн подразумевает наличие предметов перед тем, как создать класс Item.
- И главное… Не бойтесь вернуться на шаг 2. Возможно, еще не время для настоящего релиза.
Удачных вам релизов и быстрого развития.
- разработка игр
- разработчик игр
- игры
- gamedev
GameDev: с чего начать разработку игр?
Разработка игр за последние десятилетия превратилась в полноценную индустрию и сильно видоизменилась. Раньше программисты не знали, с чего начать, из-за отсутствия информации и ресурсов, теперь – из-за избытка. Зарубежные вузы начали открывать соответствующие специальности и курсы.
Так что, если хотите разрабатывать новые игровые движки, учите английский и ищите свою программу тут или тут. Однако индустрия меняется такими темпами, что практические навыки могут дважды устареть за время учёбы. Желающим изучить разработку движков самостоятельно помогут наши статьи: учебный план по освоению gamedev или 12 этапов изучения геймдева.
Если идея собственной игры уже созрела – начинайте прямо сейчас.
Необходимый минимум
Несмотря на то, что теперь расчетом игровой физики занимаются движки, GameDev – всё еще суровое место. Для успеха теперь требуются не столько технические навыки, сколько упорство и креативность.
Вам придется решать сложные задачи использую только свою голову. Даже домохозяйка сможет работать с конструкторами вроде GameMaker или Construct 2. В первом супер простой скриптовый язык, во втором вовсе нет кода.
Некоторые из таких игр даже добиваются успеха в Стим, все упирается в идею.
Путь конструкторов ограничен в вариациях и позволяет делать только маленькие игры. Для чего-то посерьезней придется начать с программирования. Например, пройдите курс по алгоритмам и структурам данных на C# и выбирайте Unity
Первые шаги
Стартуйте с малого. Рекомендуется первую игру делать уровня Pong-game или Flappy Bird, затем что-то уровня Марио. С гайдами это не займет много времени. Для старта движок неважен. Выбирайте, опираясь на языки, которыми владеете.
Я бы рекомендовал брать самый трудный. Эти проекты достаточно малы, чтобы написать их самому даже на С++ и понять основные элементы и паттерны.
Если доведёте эти два проекта до победного конца и не потеряете желание продолжать – добро пожаловать в GameDev.
Команда
Готовьтесь 90% работы на первых проектах делать самостоятельно. Для саморазвития этого хватит. А если хотите зарабатывать деньги на постоянной основе – нужна команда.
Один человек не сможет хорошо реализовать код, тестирование, игровую идею, арты, музыку, сюжет и продвижение, – что-то обязательно провалится. Отчаиваться не стоит. Заниматься играми хотят не только программисты.
Постоянно ищите помощь на тематических форумах типа BuildBox или TIG, есть сообщества на пикабу и реддите, даже довольно крупный сервер в discord.
Выбор движка
Закончив с ремейком Марио, беритесь за игру мечты. Сначала четко сформулируйте идею в текстовом виде, пропишите геймплей и сюжет. Если хорошо рисуете – сделайте концепты. Старайтесь всегда видеть финальную точку. Это важней, чем кажется. Иногда неделями не будет заметного прогресса в работе. План может поменяться десяток раз, это нормально, но цель должна быть четко сформулирована.
Разобравшись с финальной идеей, приступайте к движку. Хорошим универсальным выбором будет Unity. Для опытных программистов, незаинтересованных в мобильных платформах, подойдет Unreal Engine.
Оба движка используются в профессиональной индустрии, бесплатны для стартапов и имеют большое количество бесплатных ассетов. Как бонус, добившись приличного уровня мастерства, будете претендовать на работу в студиях.
Ваша идея может не выстрелить, и запасной вариант не помешает.
Хороших движков десятки. Если вам ближе другой, из-за языка или IDE, смело выбирайте его. Единственно верного пути нет.
Небольшой список движков для начинающих:
- SFML или Blender – С++.
- Unity – С#. В версиях до 2017.1 можно использовать диалект JavaScript, сейчас язык не поддерживается движком.
- LIBgdx – Java.
- pixijs – JavaScript.
- Pygame – Python.
Графика и музыкальное оформление
Важный пункт, о котором забывают молодые разработчики. Еще недавно это был камень преткновения, но рост инди сектора создал огромный рынок.
Посмотрите список бесплатных или дешевых ресурсов в магазинах Unity и Unreal Engine, это поможет сориентироваться и вдохновиться.
Если вы выбрали другой движок, уверяю вас, запрос в Google “free assets for ” выдаст результат. Есть и универсальные библиотеки, типа cubebrush или sketchfab.
Для амбициозного проекта все это не заменит графического дизайнера, но небольшую игру собрать позволит.С аудио ситуация похожа. Вот отличные сервисы с игровыми звуками opengame, musopen. Для фоновой музыки отлично подойдут bensound или incompetech. Золотой жилой может оказаться soundcloud, но навигации нет, придется переслушать горы хлама.
Продвижение
Стим уже перегружен инди играми, без маркетингового продвижения в нём затеряется даже крутая идея. Хорошим вариантом может стать выходи на молодые платформы типа Discord Store, но лучше начать искать инвестора. Даже с наличием готовой игры на руках, это трудная задача, но выполнимая. В мире социальных сетей можно обойтись достаточно скромными бюджетами на рекламу.
Заключение
Старайтесь не оставаться в одиночку, даже если команду найти не получается. Перегореть можно в два счета. Ищите единомышленников хотя бы для общения. И помните, что навыки GameDev сами по себе отличный скилл и пригодятся в создании любых программ. Время не будет потрачено впустую.
С нуля до разработчика игр: как начать создавать видеоигры, если у вас нет опыта. часть 1
Jun 21, 2018 · 7 min read
Перевод статьи Angela He: From Zero to Game Designer: how to start building video games even if you don’t have any experience
Два года назад я была простой семнадцатилетней ученицей средней школы и я ничего не знала о программировании. Но я все равно достигла своей цели и опубликовала свою первую игру в Steam.
На сегодняшний день я выпустила более 10 игр для настольных компьютеров и мобильных устройств с возможностью онлайн игры. В совокупности в мои игры сыграли более 1,9 миллиона раз.
Независимо от вашего уровня программирования, вы тоже можете написать свою первую игру. Два года назад я думала что это невозможно, но я все равно попыталась этого достичь.
Для меня — разработка игр стала самым сложным испытанием в моей жизни! Но оно того стоило! Теперь я понимаю, что разработка игр подобна любому навыку в нашей жизни: вы становитесь лучше, когда что-то делаете, терпите неудачи, получаете опыт и улучшаете свои навыки.
Я сама научилась всему тому, что знаю сейчас и теперь я постараюсь научить и вас.
Чтобы сделать игру, вы должны пройти 6 этапов разработки: Разработка идеи. Арт. Программирование. Звук. Шлифовка. Публикация
Каждый из этапов я структурировала следующим образом:
Как создают игры? ЭТАПЫ СОЗДАНИЯ и с чего начать разработку
В данной статье мы постараемся разобраться, как же вообще создают компьютерные игры, какие этапы создания проходят игры, какие трудности возникают и вообще, можно ли создать игру одному, об этом и многом другом читайте в данной статье или посмотрите видеосюжет ниже после статьи.
Как создают игры?
Начнем с самого начала, друзья, создание игры, это вообще огромная история, ведь просто создать классную и интересную игру это не так просто. За всем этим стоит огромная работа разработчиков.
И конечно, давайте начнем с того, как вообще создаётся игра? Игра сама по себе рождается в наших мыслях, после чего мы рисуем наши мысли на бумагу, таким образом, мы рисуем какие-то модели, будь-то дороги, здания, персонажей.
Вопрос, о том как создают игры весьма широкий, поэтому мы разбираем каждый момент.
Создание 3d моделей
Затем, мы всё это добро пытаемся реализовать в 3D модели, для этого разработчики используют всем известные программы для моделирования, такие как 3D MAX, он является основой основ, так как в нём в основном разрабатывают большинство моделей, к примеру, это всевозможные дороги, оружия, транспорт, здания, внутренние помещения, ну и различные мелкие детали, всякие кондиционеры, мусорные баки, палки, бочки и многое другое.
Альтернативной 3D MAX(у) является программа Blender, тоже своего рода отличная программа для моделирования. Персонажей и каких-то живых существ, а также различные модели, которые нуждаются в более детальной прорисовке, разработчики предпочитают использовать программу под названием ZBrush.
Важное правило при создании моделей для игры, это число полигонов, так вот запомните, что для создания моделей для игры нужно использовать полигонов как можно меньше, то есть так называемую lowpoly models.
То есть сначала создается high poly модель, то есть модель с большим количеством полигонов то есть виден каждый болтик вмятина, выпуклость, а уже затем создается его lowpoly models, этот процесс, если честно еще та петрушка.
Развертка uvs и наложение текстур
И так, после того, как создана модель, наступает этап сделать развертку модели, то есть модель раскладывается на несколько частей, сторон, всё это делается в том же 3D MAX, для того, чтобы в последующем, на этапе наложения текстур на модель, все текстуры на ложились правильно, без всяких погрешностей, то есть, чтобы не было никаких растянутостей.
Но иногда делать развертку модели занимает куда больше времени, чем вообще создание самой модели.
Как бы это не странно звучало, да и чуть не забыл, с текстурами тоже не всё так просто, наложить на модель стены просто текстуру кирпичей недостаточно, чтобы текстура радовала наш глаз нужно применить к ней различные карты, это карта нормалей, Normals, Displacement, Occlusion ,Specularity.
Ну не буду сейчас рассказывать о каждой отдельно, ибо это займет немало времени. Для этих карт используют различные программы, ну одна из них это программа CrazyBump.
Скажу вкратце эти карты добавляют нужные тени, засветления в нужных местах на текстуре, впоследствии мы когда будем смотреть на стену с текстурой кирпича, мы будем видеть различные выпуклости, но на самом деле их и вовсе нет, это просто обман зрения, который помогает с экономить куча ваши ресурсов пк.
Ибо если делать каждый выступ, каждый камень, то поверьте, вы заслужите место в проекте рекордов Гинеса с заголовком самые высокие требования игры.
После того как модель готова, на ней имеется правильная текстура со всеми картами, модель отправляется в движок, ну или в двигло, кто как горазд. Что же это такое движок и с чем его едят? У любой игры есть свой движок, т.
к если бы не было движка не было бы и соответственно игры. Так вот каждые игровые студии используют разные движки для создания игры.
В этом видео мы рассмотрим всего три более успешных на мой взгляд игровых движка, ну и которые доступны для скачивания совершенно бесплатно.
Как создают игры на unreal engine 4?
Первый движок это Unreal engine 4 на мой взгляд является одним из лучших движков в создании игры, я думаю вы со мной согласитесь, после того, как я приведу вам примеры игр сделанных на этом движке:
- Tom Clancy’s Splinter Cell
- Postal 2
- Lineage II
- Shrek 2
- Spider-Man 2: The Game
- Tom Clancy’s Ghost Recon 2
- Star Wars: Republic Commando
- SWAT 4
- World War II Combat: Road to Berlin
- Red Orchestra: Ostfront 41-45
- Tom Clancy’s Ghost Recon 2
- Killing Floor
- Bioshock
- Medal of Honor: Airborne
- Mass Effect
- Turok
- Tom Clancy’s Rainbow Six: Vegas 2
- Mirror’s Edge
- Borderlands
- Mass Effect 2
- BioShock 2
- Medal of Honor
- Homefront
- Red Orchestra 2: Heroes of Stalingrad
- Batman: Arkham City
- Mass Effect 3
- Spec Ops: The Line
- Borderlands 2
- Painkiller: Hell & Damnation
- Deadpool
- Outlast
- Mortal Kombat X
- XCOM 2
Как создают игры на unity 5?
И многое-многое другое, на этом движке было разработано свыше 100 игр, я перечислил только самые известные игры. И теперь, вы наверное представляете, что может этот движок. Затем у нас идет движок Unity5, двигло на мой взгляд явно больше предназначено для мобильных платформ, ну не будем сейчас вдаваться в подробности.
На этом движке были сделаны следующие игры:
- 7 Days to Die
- Fallout Shelter
- he Long Dark
- Need for Speed World
- Slender: The Arrival
- The Forest
- Rust (игра)
Ну и как-то с известными играми вроде всё. Ну опять же думаю, тут многое понятно, даже по количеству разработанных игр. Но я ни в коем случае не осуждаю никак этот движок, а только констатирую факт. А вы делайте для себя вывод.
Ну и её один из движков, который тоже является бесплатным не так давно это всем известная песочница CryEngine 5, движок просто отличный, зарекомендовал себя со стороны лучшей игровой природы, но вообще теперь даже не знаю, наверное, ему стоит хорошенько потягаться с движком Unreal.
Как создают игры на cryengine?
Этот движок довольно простой и лёгок в использовании, на нём были сделаны игры такие как:
- Crysis
- The Day
- Far Cry
- WARFACE
Ну и достаточно, вообще этот движок в основном используют ребята из Ubisoft и Crytek. Ну конечно у них есть свои правила разделения вашей прибыли с ними, но все эти движки берут не так много процентов с ваших продаж.
Unreal Engine 4 — если Ваши продажи превысят более 1 млн, то с кажой продажи вы будете отчислять по 5%
Unity5 — как только Ваши доходы превысят $100 тысяч в год вы должны будете отчислять по 5%
CryEngine 5 — Компания Crytek сообщила, что последняя версия графического движка CryEngine отныне будет распространяться по принципу «платите сколько хотите».
Согласно описанию данной бизнес-модели в пресс-релизе, разработчики получат доступ к инструментарию движка и исходному коду, а платить они будут ровно столько, сколько захотят сами.
Обязательств платить отчисления Crytek не требует, как не требует и оплачивать подсписку за использование дополнительных сервисов.
Работа с «движком»
Итак, определившись с движком, разработчики начинают основной процесс создания всей игры. Сначала создается игровой мир, затем ландшафт этого мира, это могут быть различные горы, реки, дороги, растения, животный мир и так далее.
Затем разработчики расставляют свои модели, сделанные ранее, по всей карте.
После чего приступают к созданию логике игры, то есть это всевозможные, сцены, проработка анимацией, да, кстати, не сказал про анимации, их тоже сперва заготавливают, анимации делают либо в специальном костюме, все вы наверное видели.
Или анимация пишется с помощью координат, первый способ с костюмом проще и реалистичнее выглядит в последствии, но это дорого, а второй способ труднее, тратится больше времени, то получается тоже не плохой результат.
Ну и соответственно, продумывают умы ботов, настраивают интеллект ИИ и на самом деле огромная работа, очень важная и очень сложная. Также разработчики добавляют различные звуки, это могут быть звуки природы, выстрелов, окружения, а также озвучка персонажей, для этого команда разработчиков выезжает на различные места, к примеру, на военные полигоны для записи выстрелов оружия.
Также разработчики заказывают различные эффекты, будь-то взрывы, пожары и многое другое. Разные движки поддерживают несколько типов создания логике, это либо программирование C++ либо построение схем последовательности, так называемые (Blueprint).
Как правило, найти такого человека, который бы знал от и до все эти тонкости логике очень трудно, я говорю это не только про Россию, так про многие другие страны, наверное, это и является самой главной проблемой в разработки игр.
Наверное поэтому, в нашей стране нет особо крутых игровых проектов, который можно было бы не стесняясь поставить в пример какой-нибудь Battlefield или что-то вроде GTA 5.
Наверное, единственная игра на сегодня, которая еще разрабатывается, может с кем-то посоревноваться это игра Escape from Tarkov от наших разработчиков BATTLESTATE GAMES из Санкт-Петербурга.
И так когда вы всё таки разобрались с логикой, всё расставили на свои места на карте, “протестили”, провели так называемый альфа тест и вы уже готовы наконец продать свой продукт жаждущим поиграть в вашу игру людям, в этом вам поможет сообществаSTEAM. Но перед тем как добавить свою игру в STEAM, многие разработчики выкладывают сначала “тизер” своей игры на сайт kickstarter на котором они собирают еще денежки для реализации и для до разработки каких либо элементов игры.
Ну а уж после чего на финишной прямой выкладывают игру в Steam Greenlight, стоит это не так много, и на данный момент составляет 3500 рублей. После чего игра проходит модерацию.
При этом стоит помнить, чтобы выложить свою игру в STEAM у игры обязательно должен быть интерфейс помимо русского, должен быть английский ибо модерацию вы точно не пройдете.
Соответственно если у вас есть и озвучка, она также должны быть и на английском, такие вот правила сообщества STEAM.
Возможно, Вам, будет интересно — какую лучше мышь использовать?
Ну вроде как всё,.. разработчики отдыхают, денежки идут, всё замечательно. Но не стоит забывать сколько было потрачено на игру. И цель разработчиков конечно же окупить свои расходы в двойне.
Ну и теперь, наверное, остался последний вопрос по созданию игры, это можно ли создать игру одному?
Друзья, отвечу что да! Это возможно и примеров таких множество, вспомните различные симуляторы хоть бы, козы, ну прочее. Но всё это конечно не самый лучший результат, т.к чтобы сделать по-настоящему интересную и качественную игру нужно привлечь немало сотрудников.
К примеру, для создания игры нужны такие специалисты, как моделлеры, аниматоры, IT специалист, тестеры, программисты, левл-дизайнеры, художники, звукорежиссёры ну и достаточно.
Хотя бы если вы к примеру разрабатываете игру какую то (войнушку), то конечно вам понадобиться такой человек, который знает, что такое военные действия и оружие, он вам обязательно подскажет где могут быть на оружие потертости, какая отдача, сила, какая баллистика оружия и многое другое.
Но иногда один человек заменяет сразу несколько специалистов, и такое тоже бывает.
Так что мой вам совет, выберете для себя отрасль в создании игры и совершенствуйте, затем ищи себе команду, это может быть даже ваш друг, который возможно тоже захочет, учится вместе с вами разработки игр. И у вас всё получится.
На этом наша история подошла к концу. С вами был Дмитрий, удачи в разработке и хороших вам игр.