Розробка комп’ютерних ігор, з чого почати?

Розробка комп’ютерних ігор, з чого почати?

  • 30 травня, 2017

Більшість любителів року рано чи пізно беруть у руки гітару, фанати спорту пристрасно мріють про вихід на футбольне поле, баскетбольний майданчик чи на професійний ринг. А ті, хто сотні годин награли у GTA, провів десятки годин у комп’ютерних клубах за Counter-Strike чи досяг немалих успіхів у WoT чи DOTA, замислюються над тим, щоб самому почати заробляти на розробці ігор.

Проблема у тому, що даному напрямку навчають у лічених учбових закладах (у нашій країні їх можна перерахувати по пальцях). Тому більшість розробників ігор — самоучки.

Так з чого ж почати?

Перше, з чого, можливо, треба почати (я не враховую саму гру у ігри)), — це модобудування.

Мод (скор. від «модифікація», моддинг ігор) — доповнення до комп’ютерної гри, написане, як правило, сторонніми розробниками чи любителями за допомогою SDK, яке додається до гри чи спеціальних, розроблених для модифікування ігор аматорських програм.

Моди звичайно розробляються фанатами та для фанатів і передбачають виключно безкоштовне розповсюдження. На відміну від адд-онів, вони часто змінюють баланс сил (у стратегічних іграх) чи набір зброї та можливості герою (у 3D-шутерах).

Модобудування дозволить вам зрозуміти внутрішню логіку вашої улюбленої гри, як вона побудована та що можна змінити у ній у кращий (а інодні і у гірший) бік.

Друге, що треба, — правильно сформулювати свої цілі у розробці комп’ютерних ігор. Тобто поставте собі ряд питань: створювати мобільні додатки чи браузерні ігри, професійно займатися розробкою ігор чи присвятити цьому вільний від роботи час? Також треба розуміти, що вам більше до душі: створення інтерфейсу, геймплею чи написання скриптів? А, може, ви бажаєте бути 3D-митцем? Правильна постановка мети спрямує вас на правильний шлях.

Ну й, звісно, у вас формується ряд питань — що треба знати. Я наведу приклади для написання ігрових скриптів, логіки, поведінки тощо. Тобто програмування (це те, чим займаюсь власне я).

Питання номер один: яку мову обрати? Чесно, підійде будь-яка (тільки компілюйте мови, такі як C++, C#, Java, Objective C тощо), головне, щоб починаючий розробник зрозумів принципи розробки не конкретно ігор, а основи логіки програмування (тобто у майбутньому логіки у розробці ігор).

Чи можливо без програмування?

Вивчення мов програмування — дуже працеємний та довгий процес. Та й ентузіазм може стихнути. Але ви ж бажаєтє вже зараз розробляти ігри.

Тоді моя відповідь: конструктори комп’ютерних ігор!

Конструктор ігор — програма для швидкої конвеєрної збірки комп’ютерних ігор, підходить людям без спеціальної підготовки. Поєднує у собі ігровий движок та IDE й значно спрощує процес створення іго, роблячи його доступним аматорам, не програмістам. Конструктори відкривають величезний потенціал для створення ігор. Особливо для мобільних пристроїв, на яких є великий попит на маленькі ігри. Популярні движки (на мою думку, найпродвінутіші сьогодні) такі як Clickteam Fusion, Game Maker Studio та Construct 2 дозволяють вам створювати ігри для PC, iOS, Android, HTML 5, Flash тощо.

Що таке Unreal Engine?

Але що робити людям, які ніби то й пишуть код, але часу на вивчення усіх премудрощів не вистачає. У якості відповіді наведу у приклад Unreal Engine.

Unreal Engine — це одні з найпопулярніших ігрових движків, які доступні сьогодні. Крім того, він повністю безкоштовний, а також з відкритими початковими кодами. Але, при досягнення певної суми заробітку на грі вам доведеться сплачувати роялті (це, звісно, стосується і інших движків класу ААА, наприклад, іншого не менш популярного движку Unity).

Як дехто знає, у движку можна писати ігрову логіку на С++. Але покваплюся вас заспокоїти: у ньому також можна створювати ігрову логіку за допомогою візуальної системи програмування — Blueprint — це візуальна скриптова мова, яка дозволяє написати логіку гри без використання мов програмування. Яким би складним чи простим він не здавався, він залишається доволі потужним інструментом, на якому можна створювати практично усе що завгодно: від простого персонажу чи відкриття дверцят до процедурної генерації рівня.

За допомогою BSP можна створити гарний пейзаж і збагатити його рослинністю і якимись додатковими деталями

Сам Unreal Engine надає певний набір інструментів, завдяки якому можна створити щось своє, не вдаючись до стороннього ПЗ (без урахування текстур). Всередині редактору існує інструмент під назвою BSP, завдяки якому ви зможете спроектувати сцену. Хоча він призначений для проектування, а не для фінального результату, з його допомогою можна створити нескладну модель та навіть конвертувати її для того, щоб вона могла піддаватися фізиці. Можна зробити будівлю, якісь не дуже складні моделі та тому подібне. Також надається інструментарій для створення ландшафтів, за допомогою якого можливо зробити доволі красивий пейзаж та збагатити його рослинністю та якимось додатковими деталями. Додавши небагато пост обробки, можна отримати чудову картину.

Звичайно, не варто розглядати UE4 як набір кнопок під назвою «зробити все добре». Інструмент дуже потужний з вражаючим функціоналом, тому вивчити всі і відразу теж не вийде. Однак якщо ви зумієте поставити собі за мету і наберетеся достатньо терпіння, то у вас все вийде.

Рекомендуємо курс по темі

Як висновок. Що потрібно знати, щоб почати?

Починаючому розробнику треба багато терпіння у засвоєнні модобудування, розробки на спеціальних конструкторах ігор без програмування, а також необхідно вивчити увесь інструментарій розробника. Далі це стане в нагоді на практиці. Ну й, звісно, любити ігри!


Що стосується більш продвинутих людей, то тут список куди більший. Все залежить від того, яку професію ви оберете. Для програміста — робота на мовах високого рівня, щоб поріг входження був меншим, основи моделювання, геометрія речей, роботу у 3D-просторі та багато іншого — в цілому, це те, що зветься предметною областю. Любов до ігор та програмування — теж обов’язковий атрибут.