9 марта 2014 9.03.14 11 15K

Двигло Гейба или «На каком движке делать игру?» #2

+39

Здравствуйте дамы и господа. Думаю, что перед тем как начать читать данный топик, вы прочли первую часть данной рубрики. Если же нет, то вот вам ссылочка на первую часть — КЛАЦ.
Первая часть данной рубрики являлась моим первым блогом на этом замечательном сайте. Хочу сказать всем спасибо за критику и различные замечания, ведь я стараюсь совершенствовать свои навыки :). Я думаю, что первый блог набрал достаточное кол-во плюсанов, чтобы вторая часть данной рубрики могла выйти в свет! Да и я спешу поделиться с вами своими познаниями).

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

Если до кого еще не доперло, говорить мы будет о таком замечательном движке Source и его так сказать прародителе — Gold Source (GOLD SRC). Вся эта тема будет посвящена именно этому движку, ведь говорить о нем можно или же даже НАДО не мало, чтобы рассказать о всех его нюансах и возможностях.

Хотелось бы сказать, что и у Gold Src есть мама). В основу движка GoldSrc положен купленный у id Software код от QuakeWorld, в котором использовалась улучшенная версия движка Quake engine.
Первой игрой на этом движке стала Half-Life. Графика и механика игры на момент выхода игры просто поражала подрастающее поколение геймеров. А сюжет-то там какой был… Сейчас же ньюфаги кричат «ШТО? КАКОЙ ХАЛФ-ЛАЙФ? ТАМ ЖИ ГРАФОНА НЕТУУ, ПАРАША, ФУУ».

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

Первой игрой на Source как вы знаете (или не знаете) стала Half-Life 2, графика которой может впечатлить вас и на данный момент, хоть она и вышла в 2004 году.

А вот пример игры, в которой из Гейбовского движка выжаны все соки. Хотя может можно достичь даже большего.
Имя игры — Dear Esther

После того как я продемонстрировал вам графические возможности движка, перейдем непосредственно к разработке игр на нем. Постараюсь объяснять вам попроще. Разработку игры на Source можно поделить на 2 этапа или же раздела.
1й — Маппинг (Создания игровой локации, наполнения её игровыми объектами, связь этих объектов между собой и т.д. Вообщем визуальное оформление уровня игры.)
2й — Кодинг (Процесс написания программного кода, скриптов, с целью изменения любых игровых элементов)

При создании собственной игры, а не мода к HL2, процессом кодинга нельзя пренебречь. Изначально, скачав исходники игры, ваша игра будет выглядеть как простой HL2. Именно для того чтобы изменить игру до неузнаваемости кодинг и нужен. Так вот, как же происходит этот процесс в Source? Кодинг потребует от вас знаний очень многофункционального языка программирования — C++ (при том, знаний нужно не мало) и программу Visual Studio 2008 — 2012, а так же Service Pack 1 для Visual Studio.

((СКАЧАТЬ VISUAL STUDIO 2010)) — КЛАЦ
((СКАЧАТЬ SERVICE PACK 1 для VISUAL STUDIO 2010)) — КЛАЦ

Так же для создания собственной игры вам понадобятся исходники HL2, которые можно скачать по ссылке ниже:

((СКАЧАТЬ ИСХОДНИКИ)) — КЛАЦ Внизу правой колонки будет кнопка Download Zip, жмите её.

О том как начать кодить и собрать все воедино для создания собственного мода вы можете узнать посмотрев тутор ниже. В этот раз кидаю конкретный тутор потому, что он единственный в своем роде. Лично я на просторе рунета не нашел ни одного обучающего видео о том как начать кодить под Source SDK 2013 :). В данном случае Source SDK 2013 — это те самые исходники. Раньше это являлся набор инструментов для создания собственного мода или игры. Теперь же Valve решила все похерить. Хотя может это и к лучшему, мне не знать, я ведь не зарабатываю на своих играх миллиарды в день :).

Совсем забыл сказать! Вам так же потребуется Half-Life 2 или его эпизоды, купленные в Steam. Да-да, куплены. Если ты до сих пор не приобрел эту легендарную игру, то самое время это сделать ;). Ну или же вы можете пойти по путю пирата и просто скачать его, но в таком случае, выше приведенная инструкция не для вас и вы вряд ли её найдете.

На процессе кодинга я зацикливаться не буду, поэтому перейдем сразу к маппингу. В связи с последними обновлениями, скачанный вами Source SDK, который вышел раньше 2013 года, не принесет вам никакого результата кроме многочисленных ошибок при попытке запуска редактора.
Исходя из чего запускаем редактор из папки с игрой. Пример: D:\games\Steam\SteamApps\common\Half-Life 2\bin\hammer.exe

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

Вот так выглядет окно Hammer Editor — редактора карт на Source.

Именно в этом редакторе были созданы все замечательные игры от Valve. Кстати, POSTAL 3 тоже был сделан тут. Так же через этот редактор прошла замечательная инди игра — The Stanley Parable. И самое главное — всеми любимый с недавних пор Titanfall, который сейчас на закрытом бета-тесте, тоже сделан на Source до сих пор проходит свой путь через этот редактор ;).

Так что можете не сомневаться, что при больших усилиях вы сможете сделать свой Titanfall с блэкджеком и… ну вы поняли :). Так же из этого можно сделать вывод, что код движка очень гибкий и хорошо постаравшись можно сделать игру, которая совсем не похожа на стандартный HL2.

Так же Valve предоставляют вам программу для создания собственных лицевых анимаций и сцен. Так что вы сможете без труда сделать свою Кат-сцену.
Правда редактор немного кривой и часто вылетает у владельцев Windows 8. (Тут должна была идти шутка про убогость win8, но я воздержусь и оставлю это вам. Комментарии ведь для чего-то нужны :D)
В процессе разработки своей игры вы будете создавать собственных персонажей(НПС) и такая замечательная программа для работы с моделями — 3dMax вам в этом поможет. Напрямую модель перенести из 3dmax в Hammer не получится, нужно будет воспользоваться компилятором.
Что еще можно сказать про Hammer, так это то, что там есть множество инструментов для контроля AI — искусственный интеллект. С помощью данных вам инструментов, вы без труда сможете расставить все пути, места прыжков, места, куда нельзя ходить или можно для ваших персонажей.
Что касается освещения в Source, говорить тут нужно не много, нужно показать :) Ниже скрин. Как вы могли заметить, можно добиться просто замечательного освещения на данном движке, но при этом надо иметь прямые руки и голову на плечах.

Напоследок хочу напомнить, что на Source можно делать игры и моды совершенно разных жанров. Можно сделать Action-RPG, такую как E.Y.E.: Divine Cybermancy или шутер от третьего лица — POSTAL 3, и Alien Swarm. Кстати, компания Team Chivalry даже сделала средневековые баталии на Source — Age of Chivalry. Вполне прикольно выглядит)

А сейчас я вынужден с вами попрощаться. Писать этот и предыдущий мой блог было не так легко, поэтому я рассчитываю на ваши "+" к этому блогу :). Если вам понравилось обязательно напишите об этом в комментариях. Так же в комментах приветствуются идеи для следующих частей из данной серии. Так же можете делиться своими мнениями о данном движке, может у вас даже был опыт работы с ним, и вы расскажите нам о его плюсах и минусах. Короче все в комменты! Не стесняйтесь! До следующего выпуска, всем удачи)


Half-Life 2

Платформы
PC | Mac | Linux | PS3 | XBOX | X360 | XONE | XBOXSX | Android
Жанр
Дата выхода
16 ноября 2004
5.3K
4.6
3 622 оценки
Моя оценка

Counter-Strike: Source

Платформы
PC | Mac | Linux
Жанры
Дата выхода
7 октября 2004
1.8K
4.0
884 оценки
Моя оценка

Day of Defeat: Source

Платформы
PC | Mac
Жанр
Дата выхода
26 сентября 2005
191
3.9
89 оценок
Моя оценка

Postal 3

Платформа
PC
Жанр
Дата выхода
25 ноября 2011
376
2.2
291 оценка
Моя оценка

Alien Swarm

Платформа
PC
Жанры
Дата выхода
20 июля 2010
288
3.8
133 оценки
Моя оценка

Black Mesa

Платформы
PC | Linux
Жанр
Дата выхода
6 марта 2020
2.3K
4.5
1 655 оценок
Моя оценка

Left 4 Dead 2

Платформы
PC | Mac | Linux | X360 | XONE | XBOXSX
Жанр
Дата выхода
17 ноября 2009
3.2K
4.3
2 088 оценок
Моя оценка

Portal 2

Платформы
PC | Mac | Linux | PS3 | X360 | XONE | XBOXSX | NSW
Жанры
Дата выхода
19 апреля 2011
6.1K
4.7
4 323 оценки
Моя оценка

Counter-Strike: Global Offensive

Платформы
PC | Mac | Linux | PS3 | X360 | XONE | XBOXSX
Жанр
Дата выхода
21 августа 2012
2K
3.5
1 703 оценки
Моя оценка

Titanfall

Платформы
PC | X360 | XONE | XBOXSX
Жанр
Дата выхода
11 марта 2014
828
4.2
738 оценок
Моя оценка

Лучшие комментарии

мне как человеку, не разработчику, все понятно и интересно, спасибо
З.Ы. ВИН 8 — нормальный(почти)
Postal 3 — это позор серии трешовых игр про Чувака
А это разве плохо? Я вот лично ничего плохого в этом не вижу, главное чтобы посты были интересными
Такое ощущение, что все разом прочитали один комментарий одного чувака и начали клепать посты «вписывающиеся в тематику игровых Блогов». Не то чтобы они были плохи, но такое их засилье(А я боюсь, что они вот-вот глобально налетят) просто как-то удручает…
ЭЭЭх, что прошлая тема была бестолковой, что эта.
Во-первых. Выкладываешь скрины — удостоверься, что это скрины нужной тебе игры. Сhivalry, который на сорсе и который платный — это две разные игры от одних и тех же людей. Одна использует в качестве движка Source (КО), другая (платная) UE 3. И тут важная деталь, скрин из последней использован в теме.
Как это понять по скриншоту, не зная игры? Просто! Смотрите: Source использует довольно бедный набор постэффектов. В последних редакциях там есть и DOF и цветокоррекция, но даже в таком виде они не дотягивают до современного вида. Почему же, спросите вы, игры на сорсе не становятся похожи на поделки на юнити? Ответ достаточно банален. Во-первых загадить графику на сорсе просто — смотрите моды. Во-вторых, если не лезть кривыми руками в дебри освещения и постэффектов, то добиться нормального результата достаточно просто, если не перегибать палку с цветами (постэффекты меняют цвет и восприятие картины, теоретически многого можно добиться просто используя правильную композицию и цветность текстур, Half-Life 2 тому подтверждение). В-третьих указанные примеры, а именно Dear Esther и TitanFall — это титанический труд разработчиков с опытом в несколько лет. Тот же создатель Дорогой Эшер Роберт Брискоу перед тем как заняться игрой проработал пару лет в DICE, где знают толк в цвете и постановке света (но это не значит, что BF4 самая красивая и технически продвинутая игра, предвзятое мнение автора, более того, разработчики, которым «довелось» поработать с движком, говорят, что он на редкость коряв и инструментарий не очень удобен, что не удивительно для закрытого движка). Разработчики же TitanFall просто делали CoD и этим всё сказано.
Сделать игру можно НА ЛЮБОМ движке. Основным условием для создания хорошей игры является не движок, а прямые руки (особенно для инди). Да, у каждого движка есть свои особенности и стоит понимать, что не стоит выбирать CryEngine для создания обычного тетриса для телефонов. Но если вы новичок в этом деле (а иные, обычно, не читают такого рода статьи). То вы должны определиться не с выбором движка, а с выбором направления (геймдизайн, сценарка, 3Д (включаем ещё и текстуринг и анимирование) и кодинг), а затем работать по каждому из направлений (даже если вы выбрали упоротое Инди, где единственным разработчиком будете вы). Читайте необходимую литературу и блоги разработчиков с опытом (в т.ч. на английском, вообще знание английского — это важнейший навык при разработке игр, ибо документация для движков на этом же языке). Обрисуйте себе план игры, которую хотите сделать (инди — хоррор — ладно, стрелялку на основе уже готовых ассетов с необычным сеттингом, который вы точно можете осилить — ладно, скайрим — учитесь, вы не рассчитали свои силы). Как только вы поймёте что хотите сделать и будете уметь достаточно много, чтобы реализовать хоть что-то (и да, советую начинать с модов, это проще и лучше обучает, поскольку есть готовое), выбирайте движок с необходимым для вас набором инструментов.
Не умеете кодить, хотите сделать графику и разобрали, чем нормаль отличается от спекуляра, а также представляете себе, как делать хайполи и запекать с неё вышеупомянутые, то выбирайте CryEngine или Unreal (последний несколько сложнее и его легче запороть) (а лучше просто идите работать в контору, там ваш талант разовьют и движок выбирать не придётся), если вы хороший кодер и ваша игра про геймплей, а не графику, то выбирайте более «легковесный движок», например юнити, хотя и сорс сойдёт.
Главное, опять же повторю, не движок, а прямые руки, желание что-то сделать и умение преодолевать трудности. Движок — это инструмент для достижения цели, но никак не цель.
Так же

Если бы ты не написал это слово раз двадцать за статью, я бы не стал придираться, но имей совесть — выучи в каких случаях пишется слитно.
Круто, про Source написано^_^
Я был впечатлён и зол, так что написал много хрени и абсолютно не раскрыл тему. Теперь придётся писать статью с указанием нужных ссылок всем начинающим разработчикам(
Ждём от тебя туториал по созданию небольшого мода для халфы с использованием кодинга ^^,
Читай также