Як створювати ігри на пк. Створення комп'ютерної гри своїми руками

Ця стаття розповість Вам, що все-таки потрібно, щоб створити комп'ютерну гру. Якщо Ви втомилися від загальних порад – перегляньте цей документ, і Ви напевно знайдете в ньому щось корисне. Матеріал орієнтований початківцям і для професіоналів не цікавить.

Свобода чи гроші

Чи хочете Ви створити комп'ютерну гру? Сподіваюся, Ви вже вирішили свої сумніви. Виходячи з того, що Ви зараз читаєте цей текст, наважуюся припустити, що так. Тому пропоную Вам поставитись іншим, не менш банальним, але й не менш важливим питанням: навіщо Вам це потрібно? Відповідь на це питання вже менш очевидна, і я намагатимусь допомогти Вам у його відшуканні. Залежно від нього в першу чергу і залежить, яким інструментарієм Ви користуватиметеся.

А варіантів відповіді, якщо подумати, можна назвати два.

Варіант перший. Прочитавши статтю в улюбленому журналі, почувши захоплену розповідь друга або погортавши інтернетівські форуми, Ви зрозуміли, що гру під силу зібрати простому смертному і відразу заразилися цією ідеєю. Таким чином, програму Ви пишіть із чистого ентузіазму для себе коханого, уявлення друзям або, у крайньому випадку, для безкоштовного розповсюдження по Мережі. Тобто комерційне поширення спочатку не передбачається. У цьому випадку Ви можете особливо не обмежувати себе у виборі засобів розробки. Я не закликаю вас переходити на користування виключно піратським софтом. Просто майте на увазі той факт, що багато великих компаній – розробники популярного ПЗ – дивляться крізь пальці на подібне використання своїх продуктів. Принцип «спробуй і купи» загалом і в цілому вкладається в їхню ідеологію.

Згідно з другим варіантом Ви, навпаки, просто шукайте спосіб побільше заробити і вирішили, що створення ігрових програм - це і є довгоочікуваний птах удачі, Ваш шанс зробити крок «з бруду в князі». Слід зазначити, що часто другий варіант випливає з першого. Створивши дійсно якісний продукт і постійно вдосконалюючи його, Ви наважуєтеся стягувати плату за його використання. За такого розкладу у Вас вже немає такого багатства вибору. Вам, так чи інакше, доведеться придбати ліцензійні версії програм, інакше закономірно виникнуть проблеми. Так що мимоволі доведеться оцінювати свої фінансові можливості. Щоб уникнути непорозумінь, я мав підняти тут цю тему.

А тепер подумаємо, що ж нам таки знадобиться, щоб написати гру.

Flash та конструктори ігор

Flash є унікальною програмою, яка не має конкурентів у своїй ніші, головним чином через її широку функціональність. Використовуючи лише один продукт, Ви можете бути програмістом, web-дизайнером та художником одночасно. Створені за допомогою Flash ігри трохи легше поширювати, ніж справжні. Але серйозного проекту на флеші зібрати не вдасться. Якщо Ви програміст-одинак, то для Вас Flash може виявитися майже ідеальним рішенням, що дозволяє заощадити час та гроші. Але якщо Ви працюєте в колективі і хочете зробити саме Гра, а не інтерактивний мультфільм, рекомендую звернути увагу на більш спеціалізовані продукти.

Тепер щодо різноманітних конструкторів ігор. Друзі мої, використання їх є ламерством у чистому вигляді. Вони (конструктори) позбавлені багатофункціональності Flash, не надаючи жодних переваг. За допомогою конструктора Ви можете зробити тільки те, що передбачив його творець, тоді як транслятори на кшталт Delphi або Visual C++ дозволяють вирішити будь-яке програмістське завдання.

Моя вам порада: відмовтеся від використання конструкторів ігор і одразу переходьте на «серйозні» продукти.

Розбір польотів

Сподіваюся, я відмовив Вас від використання усіляких флешів і направив на справжній шлях творця ігор, якщо ні - повертайтеся до попереднього розділу:)

А тепер настав час розібратися, що ж нам все-таки знадобиться на нелегкій ниві граморобства. По-перше, Вам знадобиться персональний комп'ютер, як би це банально не звучало. Без нього вже, даруйте, ні куди. По-друге, обов'язково стануть у нагоді голова, здатна мислити, аналізувати і трохи фантазії. І останній обов'язковий атрибут програміста-гравця, звичайно ж транслятор. Про нього родиме і йтиметься далі. Крім обов'язкового набору, знадобляться й інші програми на кшталт графічного редактора, але про них трохи пізніше.

Вибираємо транслятор

Зауважте, я ще жодного слова не сказав про вибір мови програмування. Існує їх безліч і для написання гри теоретично підійде практично будь-хто. Писати ігри можна і на бейсику, і на фортані, і, вибачте, на стіні в сортирі. Тут важливо визначитися, що Ви розумієте під словом «гра» та яку саме гру Ви хочете зробити. Влаштування сучасних графічних ігор докорінно відрізняється від усяких там чет-непарів і що з ними. Головоломка зі словами, що працює в текстовому режимі, теж називається грою. І саме тому серед неодмінних атрибутів творця ігор я не згадав графічний редактор. Особисто мені під гордим словосполученням «комп'ютерна гра» представляється яскраве шоу, що має динамічну дію та обов'язкову присутність графіки. Для написання таких ігор створювався DirectX і такі ігри сьогодні продаються тисячними тиражами.

Я приділяю таку увагу цьому питанню тому, що гра - поняття дуже розпливчасте і важливо з самого початку визначитися, що саме Ви хочете зробити.

Визначились? Тоді можна сміливо переходити до вибору транслятора, або, спрощено кажучи, середовища розробки. Зверніть увагу, що я рекомендую вибирати не мову програмування, а саме транслятор. Зумовлено це однією простою причиною. Програміст не працює з C чи паскалем. Він використовує Microsoft Visual C ++ або Borland Pascal. Не має значення, якою саме мовою Ви програмуватимете. Зрештою те, що Ви можете створити, багато в чому визначається можливостями конкретного транслятора. Я рекомендую зупинити вибір на згаданому Visual C++, Borland C++ Builder або Borland Delphi. Представлені транслятори продаються у кількох редакціях. Я не рекомендую брати найкрученішу супер pro-версію. В основному, відмінність між різними редакціями полягає у кількості доступних програмісту візуальних компонентів та допоміжних утиліт, що для створення ігор непринципово.

Ігрові двигуни

Збирати гру зі стандартних візуальних компонентів – не найкрасивіше рішення. Наслідуючи його, Ви втрачаєте прийнятну швидкодію і свідомо обмежуєте себе в можливостях. Проте писати гру «з чистого листа» сьогодні також не прийнято. Для спрощення створення ігрових та мультимедійних програм були створені бібліотеки DirectX. При безлічі переваг, серед яких - висока швидкодія, програмуванню на "чистому" DirectX властивий один серйозний недолік - висока складність розробки.

А тому було створено безліч так званих «ігрових движків», заснованих на DirectX і значно полегшують процес програмування. Не нехтуйте, але й не зловживайте їх використанням. Було б смішно, якби стандартний пасьянс Windows був написаний на DirectX-движку і вимагав для роботи в системі 3D-акселератора.

Найбільш наворочені двигуни продаються за шалені гроші та їх поширення суворо обмежено. На щастя, в Інтернеті можна знайти і безліч безкоштовних двигунів. Наприклад, якщо ви використовуєте Delphi і є новачком у програмуванні, я рекомендую вам ЛКІ-Creator та DelphiX.

Підбираємо пензлі

Пара слів про графічні редактори. Для створення скільки-небудь пристойної графіки в Paint'e Ви повинні мати неабиякий талант і необмежений вільний час, так що рекомендую піти більш цивілізованим шляхом. Звичайно, Photoshop – штука дорога, але у справі обов'язково знадобиться. Іншою програмою, що добре зарекомендувала себе, є Corel PhotoPaint. Для обробки тривимірних моделей рекомендую 3D Studio Max, що є майже стандартом де-факто в області тривимірної графіки.

Супутні засоби

І насамкінець, хочеться згадати про, так би мовити, другорядні засоби, що використовуються в процесі розробки ігор і варті Вашої уваги. Тут я не буду багатослівним і перейду відразу до справи. Після досягнення деяких успіхів Вам може стати в нагоді програма для створення настановних дисків - найкраще початківцю розробнику підійде InstallShield Express. Для створення презентації продукту та створення оболонки компакт-диска використовуйте InstallShield DemoShield. Про засоби створення музики та інші подібні речі я тут навіть і не заїкаюся. Музику для ігор сьогодні рідко створюють самі, а качають вже готову з Інтернету, особливо це стосується розробників-початківців. Головне, щоб джерело не було надто відомим. Один із головних Ваших помічників – Інтернет. Не забудьте відвідати On-Line форуми та конференції.

Розробка відеоігри – справа непроста. Тим не менш, якщо у вас є ідея на мільйон, то краще почати якнайшвидше! Незалежних розробників останнім часом стає дедалі більше, а створення гри ще ніколи не було дешевшим чи простішим. Ця стаття розповість вам про основні віхи створення відеоігри.

Кроки

Основи

    Виберіть жанр.Так, усі успішні ігри – унікальні. Проте їх можна зарахувати до того чи іншого жанру. Визначтеся з жанром насамперед! А жанри бувають такі:

    • Аркади
    • Шутер
    • Платформер
    • Гонки
    • Квест
    • Нескінченний забіг
    • Шутер від першої особи
    • Манга
    • Баштовий захист
    • Жах
    • Файтінг
    • Комедії
    • Виживання
  1. Виберіть платформу.Вибрана платформа істотно вплине на подальший процес розробки, не кажучи вже про те, як управлятиметься гра - з клавіатури, джойстика або екрана планшета.

    • Загальне правило таке - простіше розробляти гру, одразу уявляючи, як і на чому в неї гратимуть. Є винятки, звісно ж, але винятки є з усіх правил.
    • Хочете зробити гру для iPhone? Її треба буде відправляти до AppStore з комп'ютера під керуванням Mac.
  2. Напишіть чернетку концепту гри.На парі сторінок загалом напишіть, як грати у вашу гру. Лише це вже зможе дати вам уявлення про те, чи вдалою виявиться така гра.

    Створіть основну філософію гри.Це як би мотивація, яка змусить гравця грати та грати, це сама суть гри. Не соромтеся перевіряти, чи відступили ви від філософії в процесі розробки. Прикладами філософії гри можна назвати:

    • можливість вести машину;
    • можливість перевірити рефлекси гравця;
    • можливість симуляції економіки космічної держави.
  3. Запишіть усі особливості своєї гри.Особливості - це те, що відрізнятиме вашу гру від тисяч інших. Почніть з перерахування ідей та концептів, потім перепишіть все це в осмислені речення. Підготуйте 5-15 особливостей. Наприклад:

    • Концепт: будівництво космічної станції.
    • Особливість: можна побудувати власну космічну станцію та керувати нею.
    • Концепт: шкода від метеоритів.
    • Особливість: гравець намагається вижити в умовах метеоритних дощів, спалахів на сонці тощо.
    • Перерахуйте особливості зараз, і потім вам буде простіше вставити їх у план розробки гри. Всі особливості краще закласти на самому початку, ніж ліпити все потім одне на інше.
    • Переписуйте список особливостей доти, доки зрозумієте: «Це саме та гра, яку я хочу створити».
  4. Влаштуйте перерву.Сховайте в стіл чернетки на тиждень-другий. Потім дістаньте і гляньте на них свіжим поглядом. Це не зашкодить.

    Складаємо план розробки

    1. Розпишіть все до дрібниць.План розробки – це хребет вашої гри. У ньому – все. Навіть так: у ньому – Все. Механіка, сюжет, місце дії, дизайн та інше. Причому важливий не формат, важлива суть, важливий зміст цього документа.

      • Особливо важливими плани розробки стають тоді, коли під вашим керівництвом команда. План розробки гри в даному випадку – це настільний файл команди. Будьте точні, конкретні та зрозумілі у формулюваннях, що описують ті чи інші аспекти гри.
      • Не кожна гра має план розробки, а двох однакових планів не знайти. Ця стаття - лише загальне керівництво, але ви маєте право вносити і свої зміни.
    2. Складіть зміст.У змісті має бути перерахований кожен аспект гри. Єдине, про що не треба там згадувати - про сюжет, якщо сюжет не пов'язаний найтіснішим чином з механікою гри.

      • Зміст - це майже як посібник до гри. Почніть із загальних розділів, потім діліть їх на підрозділи.
      • Зміст – це як чорнова модель гри. Але в кожному з пунктів мають бути подробиці, багато подробиць!
    3. Заповніть кожен пункт змісту.Опишіть все так докладно і зрозуміло, щоб, розпочавши роботу з кодування та промальовування, всі зрозуміли, причому відразу. Кожна механіка, кожна особливість – все має бути пояснено на 5+!

      Покажіть план розробки гри іншим.Залежно від вашого підходу, створення гри може бути спільною справою. Думки інших людей щодо гри можуть зробити її кращою.

      • Скажіть людині, що збираєтесь випустити гру. Якщо людина визнає, що це просто ідея, критика може бути поверховою.
      • Якщо ви вирішили показати план розробки гри своїм близьким (як правило, показують батькам), врахуйте, що їхня оцінка може бути надто м'якою, ніж якби гру критикував запеклий ігроман. Ні, це зовсім не означає, що показувати план батькам не можна. Можна, але не забудьте показати його і тим, хто має досвід у цій сфері.

    Починаємо програмувати

    1. Виберіть двигун.Двигун – основа гри, це набір інструментів, необхідних для її створення. Зрозуміло, куди простіше взяти вже готовий двигун, ніж почати розробляти свій. Для індивідуальних розробників вибір двигунів великий та різноманітний.

      • За допомогою двигунів спрощується робота з графікою, звуками та штучним інтелектом.
      • Різні двигуни - різні плюси та мінуси. Щось краще підходить для двовимірних ігор, щось – для тривимірних. Десь потрібно краще розумітися на програмуванні, десь можна почати працювати, не відрізняючи функцію від процедури. Популярні такі двигуни:
        • GameMaker: Studio - один з найпопулярніших двигунів для двовимірних ігор.
        • Unity - простий у використанні двигун для створення тривимірних ігор.
        • RPG Maker XV - скриптовий двигун для створення двовимірних рольових ігор у стилі JRPG.
        • Unreal Development Kit – тривимірний двигун багатоцільового використання.
        • Source - дуже популярний і часто оновлюваний двигун для створення тривимірних ігор.
        • Project Shark - 3D движок для початківців та просунутих користувачів.
    2. Вивчіть особливості двигуна або найміть спеціаліста з нього.Залежно від вибору може виникнути потреба багато програмувати. Втім, навіть із найпростішими двигунами розібратися не так просто. Тому, якщо завдання здається вам не під силу, знайдіть професіонала.

      • Це може стати початком командної роботи над грою. Спочатку - програміст, потім фахівець із звуку та дизайнер, потім тестер…
      • Існує величезна спільнота незалежних розробників, з якими варто співпрацювати. Якщо людям сподобається ваша ідея - вони надихнувшись, допоможуть вам втілити її в життя!
    3. Зробіть прототип гри.Вивчивши двигун, зробіть прототип гри. Це по суті тест базової функціональності гри. Графіка або звук поки що не потрібні, потрібні лише заповнювачі та тестова область.

      • Перевіряти та переробляти прототип треба доти, доки грати не стане весело. Під час перевірок треба виявляти все, що працює неправильно, та вносити відповідні зміни. Якщо прототип не викликає у людей захоплення, то й сама гра навряд чи їх вразить.
      • Прототип змінюватиметься не раз і не два. Це нормально, адже ви ніколи не знаєте заздалегідь, як поведеться та чи інша механіка.
    4. Попрацюйте над керуванням.Управління, яке здійснюється гравцем - це базовий рівень функціоналу гри. На етапі прототипу важливо зробити керування максимально зручним.

      • Погане, складне, незрозуміле управління – розчарований гравець. Хороше, якісне, точне керування – щасливий гравець.

    Працюємо над графікою та звуком

    1. Подумайте, що потрібно проекту.Може, вашій грі буде досить строгих геометричних форм та 16 кольорів? Або вам потрібні складні малюнки, що створюються цілою командою дизайнерів? А звуки? Будьте реалістичні у своїх оцінках та наймайте людей відповідно.

      • Більшість індивідуальних ігор створюються силами невеликої команди чи навіть однієї людини. Врахуйте, що самотужки створення гри займе куди більше часу.
      • Є багато безкоштовних ресурсів, доступних всім бажаючих. Головне у цій справі – не порушувати авторські права.
    2. Намалюйте чорнові арти.Почніть працювати над візуальною складовою гри, щоб гра набула тієї атмосфери, яку ви бачили у своїх мріях.

      Розробити світ гри.Є арти з гри? Можна починати переходити до створення гри і з урахуванням стилістики почати малювати рівні або ігрові області. Якщо ваша гра в стилі «пазл», то, відповідно, вигадувати головоломки.

      Поліпшіть графіку.Залежно від вибраного стилю графіки, вам на допомогу можуть прийти різні програми, наприклад:

      • Blender - один із найпопулярніших 3d-редакторів (причому безкоштовний). У мережі повно-повно посібників по ньому, так що розібратися і швидко почати працювати проблеми не складе.
      • Photoshop дуже корисний на етапі створення текстур, а також для малювання двомірного арту в цілому. Так, він платний. Якщо хочеться безкоштовного аналога – візьміть Gimp, у нього майже такий самий функціонал.
      • Paint.net – безкоштовна альтернатива такій програмі, як Paint Shop Pro, дозволяє легко та просто створювати двовимірний арт. Особливо корисна ця програма під час роботи над двовимірним піксель-артом.
      • Використовуйте Adobe Illustrator. Ця програма чудово підходить для векторної графіки. Коштує вона недешево, так що, якщо грошей у вас обмаль, використовуйте Inkscape - безкоштовна альтернатива Adobe Illustrator з відкритим вихідним кодом.
    3. Запишіть звук.Звук – дуже важлива складова атмосфери будь-якої гри. Чи є у вас музика, чи немає її, які звукові ефекти відтворюються і коли, чи озвучуються діалоги - все це вплине на враження гравця від гри.

      • Є безкоштовні та функціональні програми для роботи зі звуком, доступні в мережі. Якщо у вас обмежений бюджет, вони стануть чудовим вибором.
      • Записувати звук можна з дому за допомогою підручних засобів.

    Збираємо всі разом

    Тестуємо гру

    1. Почніть шукати баги.Коли у вас на руках виявиться робітник від і до зразка гри, треба шукати в ньому помилки та баги. Чим більше багів ви знайдете і виправите, тим якіснішою буде гра і задоволеніший гравець.

      Робіть те, що в звичайній ситуації робити не стали.Потрібно перевірити кожен спосіб, яким гравець може взаємодіяти з оточенням. Переконайтеся, що правила гри не можна обминути або зламати.

      • Тестування гри – процес тривалий. Деколи він займає навіть більше часу, ніж сама технологія. Втім, чим більше у вас тестерів – тим швидше все завершиться і тим більше багів ви знайдете.
    2. Розставте пріоритети у виправленні багів.Якщо у вас величезний список знайдених багів, а часу на виправлення мало, спочатку потрібно виправити найсерйозніші баги.

      Слідкуйте, як грають інші люди.Покличте друзів і дайте їм свою гру. Слідкуйте, як вони гратимуть, як реагувати на завдання гри. Цілком можливо, що вони покажуть вам таке, про що ви й не думали ніколи.

    Видаємо гру

      Перевірте ще раз двигун на тему видання гри.Кожен двигун підтримує ряд платформ, а деяким двигунам потрібні додаткові ліцензії, щоб випустити гру для іншої платформи. Наприклад, Game Studio у стандартній версії робить ігри для Windows та Mac OS X. Щоб зробити на цьому двигуні гру для мобільних платформ, потрібно придбати його Pro-версію.

У сьогоднішній добірці були розглянуті найпопулярніші програми для створення комп'ютерних ігор у 2D та 3D ігор. Кожна програма відрізняється унікальними функціями, а також має свої плюси та мінуси. Завантажуйте софт, що сподобався, і створюйте абсолютно нові ігри, втілюючи в них усі свої задуми і фантазії.

Починаючи з професійних програм, варто виділити CryENGINE, NeoAxisі Unreal Development Kit. Усі вони нададуть великий функціонал розробки барвистих ігор будь-яку тематику. НеоАксісодержав розширені інструменти для реалізації мультиплеєрних ігор. UDKславиться тонкими налаштуваннями фізики предметів. Софт від компанії Crytekмає корисну опцію запуску редактора моделей без попередньої установки на комп'ютер. Невелика ложка дьогтю всіх програмних продуктів – високі системні вимоги.

У такій лютій конкуренції вищенаведених утиліт, вигідно розташувалася Unity 3D- золота середина, що також включає всі необхідні можливості, та ще й на потужному движку PhysX від NVIDIA. Підтримує практично всі ОС: Xbox, Playstation, Wii, Android, iOS, Windows, Linux, Mac і таке інше. Крім того, надає розвинені засоби для тестування програм. За вашим бажанням, відкриває доступ відразу кільком користувачам до одного проекту, для комфортної спільної розробки.

Kodu Labі 3D Rad- хороші варіанти для новачків, які бажають випробувати себе в галузі створення 3D ігор. Вам не знадобиться витрачати багато часу на навчання програмуванню. Софт містить величезну кількість текстур, об'єктів та моделей, а також бібліотеки готових дій для персонажів. Дозволяє тонко налаштовувати взаємодії об'єктів та керувати законами фізики. Варто відзначити, що Коду отримала найпростіший і зрозуміліший інтерфейс серед аналогів у добірці.

Створені за допомогою 3ds Maxвисокоякісні моделі та текстури можна експортувати в інші утиліти для подальшого застосування в ігрових конструкторах, наприклад: Юніті 3Д, CryENGINEта інших.

Game Editor, Construct 2, Game Maker Studioі Clickteam Fusion- Додатки для створення двовимірних ігор. Констракт 2перевершує опонентів російськомовним меню, зручнішим управлінням і більшим набором інструментів, що дозволяє розробляти навіть браузерні версії своїх творів. ГеймМейкер Студіодасть можливість розвиненим користувачам, які освоїли принципи програмування, займатися написанням коду на унікальній скрипт-мові GML. Увага ж новачків найчастіше привертає GameEditor, своєю простотою, покроковим підказником, а також непоганим редактором подій та поведінки об'єктів.

У деяких користувачів, які захоплюються комп'ютерними іграми, іноді виникає думка про створення власного проекту. Однак так просто його не реалізувати, адже однієї ідеї замало. Як мінімум, доведеться освоїти спеціальне програмне забезпечення або онлайн-сервіс, але в ідеалі треба буде запастися знаннями мов програмування. У рамках сьогоднішньої статті ми продемонструємо три можливі методи, що дозволяють створити гру, а ви, відштовхуючись від побаченого матеріалу, догляньте відповідний варіант і почнете навчання.

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

Ще рекомендуємо звернути увагу на те, що подальша інформація буде орієнтована саме на комп'ютерні ігри. Якщо ж у вас з'явилося бажання робити мобільні проекти, радимо ознайомитися з іншим матеріалом на нашому сайті, клацнувши на вказане посилання.

Спосіб 1: Програми для створення ігор

Насамперед розглянемо спеціальні програми, які дозволяють створити проект без навичок програмування. Сьогодні ми зупинимося на відомому варіанті. Game Maker – одна з найпростіших та найпопулярніших програм для створення 2D-ігор. Тут доступне створення ігор за допомогою інтерфейсу drag'n'drop або ж використовуючи вбудовану мову GML (з ним ми і працюватимемо). Гейм Мейкер - це найкращий варіант для тих, хто тільки починає розробляти ігри.

  1. Переходимо у вкладку "New"та створюємо новий проект.
  2. Створимо спрайт. Натисніть правою кнопкою миші на пункті "Sprites", а потім - "Create Sprite".
  3. Задаємо йому ім'я, нехай буде player, і натискаємо "Edit Sprite". Відкриється вікно, в якому ми зможемо змінити або створити спрайт. Створимо новий спрайт, розмір міняти не будемо.
  4. Двічі натисніть на новому спрайте. У редакторі, що відкрився, з'являється можливість намалювати спрайт. Наразі ми малюємо гравця, а саме танк. Зберігаємо наш малюнок.
  5. Щоб зробити анімацію нашого танка, скопіюйте та вставте зображення комбінаціями Ctrl+Cі Ctrl+Vвідповідно і намалюйте йому інше положення гусениць. Дозволяється робити стільки копій, скільки вважаєте за потрібне. Чим більше зображень, тим цікавіша анімація.
  6. Можете поставити галочку навпроти пункту попереднього перегляду. Ви побачите створену анімацію та зможете змінити швидкість зміни кадрів. Зберігаємо зображення та центруємо його кнопкою «Center». Наш персонаж готовий.
  7. Так само нам потрібно створити ще три спрайти: ворог, стіна і снаряд. Назвемо їх enemy, wall та bullet.
  8. Тепер потрібно створити об'єкти. На вкладці "Objects"натискаємо правою кнопкою миші та вибираємо "Create object". Створимо об'єкт для кожного спрайту: ob_player, ob_enemy, ob_wall, ob_bullet.
  9. Під час створення об'єкта стіна поставте галочку навпроти пункту «Solid». Це зробить стіну твердою і танки не зможуть проходити крізь неї.

  10. Переходимо до складного. Відкриваємо об'єкт ob_player та переходимо у вкладку "Control". Створюємо нову подію кнопкою «Add Event» та обираємо "Create". Правою кнопкою миші тиснемо на пункт "Execute Code".
  11. У вікні потрібно прописати, які дії виконуватиме наш танк. Наберіть такі рядки:

    hp = 10;
    dmg_time = 0;

  12. Створіть подію "Step"і так само пропишіть для нього код:

    image_angle = point_direction (x, y, mouse_x, mouse_y);
    if keyboard_check (ord("W")) (y-=3);
    if keyboard_check (ord("S")) (y+=3);
    if keyboard_check (ord("A")) (x-=3);
    якщо keyboard_check (ord("D")) (x+=3);

    if keyboard_check_released (ord("W")) (speed = 0;)
    if keyboard_check_released (ord("S")) (speed = 0;)
    if keyboard_check_released (ord("A")) (speed = 0;)
    if keyboard_check_released (ord("D")) (speed = 0;)

    if mouse_check_button_pressed (mb_left)
    {
    with instance_create (x, y, ob_bullet) (speed = 30; direction = point_direction (ob_player.x, ob_player.y, mouse_x, mouse_y);)
    }

  13. Додати подію "Collision"- Зіткнення зі стіною. Код:

    x = xprevious;
    y = yprevious;

  14. І так само додайте зіткнення з ворогом:

    if dmg_time<= 0
    {
    hp-=1
    dmg_time = 5;
    }
    dmg_time -=1;

  15. Подія "Draw":

    draw_self();
    draw_text(50,10,string(hp));

  16. Додати "Step" - "End Step":
    if hp<= 0
    {
    show_message("Гра закінчена")
    room_restart();
    };
    if instance_number (ob_enemy) = 0
    {
    show_message("Перемога!")
    room_restart();
    }
  17. Коли закінчили з гравцем, переходьте до об'єкту ob_enemy. Додати подію "Create":

    r=50;
    direction = choose (0,90,180,270);
    speed = 2;
    hp = 60;

  18. Для руху додайте "Step":

    if distance_to_object (ob_player)<=0
    {
    direction = point_direction(x,y,ob_player.x, ob_player.y)
    speed = 2;
    }
    else
    {
    if r<= 0
    {
    direction = choose (0,90,180,270)
    speed = 1;
    r=50;
    }
    }
    image_angle = direction;
    r-=1;

  19. "End Step":

    if hp<= 0 instance_destroy();

  20. Створіть подію "Destroy", перейдіть у вкладку "Drawing"та у пункті "Other"натисніть на піктограму з вибухом. Тепер під час вбивства ворога буде анімація вибуху.
  21. Подія «Collision – зіткнення зі стіною»:

    direction = - direction;

    Подія "Collision - зіткнення зі снарядом":

    hp-=irandom_range(10,25)

  22. Оскільки стіна у нас ніяких дій не виконує, переходимо до об'єкту ob_bullet. Додаємо зіткнення "Collision з ворогом"(ob_enemy):

    instance_destroy();

    І «Collision зі стіною»(ob_wall) з таким самим кодом:

    instance_destroy();

  23. Нарешті створимо рівень «Level 1». Натискаємо правою кнопкою миші "Room" > "Create Room". Перейдемо у вкладку "Objects"та за допомогою об'єкта «Стіна»намалюємо карту рівня. Потім додамо одного гравця та кілька ворогів. Рівень готовий!
  24. Зараз нам доступний запуск гри та її тестування. Якщо ви дотримувалися інструкції, багів не повинно бути.

Ми розглянули Game Maker тільки як найпростіший приклад, проте зараз користувачам доступно безліч найрізноманітніших подібних програм для створення ігор без знання ЯП. Тому в користувача відкривається широкий вибір відповідного інструмента.

Спосіб 2: Онлайн-сервіси

На просторах інтернету є безліч різних онлайн-сервісів, чия функціональність зосереджена на виконанні будь-яких завдань. Серед подібних веб-ресурсів є й ті, які допоможуть створити просту гру без навичок програмування. У більшості випадків користувачеві пропонують скористатися вбудованими скриптами та бібліотекою текстур, персонажів, додаткових предметів. Давайте розглянемо приклад створення такого проекту на прикладі редактора Gamefroot:

  1. Перейдіть за вказаним вище посиланням, щоб потрапити на офіційний сайт проекту, де натисніть на велику зелену кнопку з написом "Start Making".
  2. Після проходження авторизації буде запропоновано вибрати ігровий жанр. Для ознайомлення ми візьмемо платформер із вбудованим уроком від розробників.
  3. Після відкриття редактора праворуч з'явиться навігаційна панель з ознайомлювальними інструкціями цього додатку. Для початку уроку потрібно буде клікнути на «LET`S GO».
  4. Далі потрібно буде ознайомитися з кожним кроком, у якому описується процес взаємодії з редактором. Наведені інструкції допоможуть розібратися з основами ігрового будівництва та використанням усіх інструментів.
  5. Ми не зачіпатимемо початкове вікно гри, оскільки воно і так налаштоване коректно за замовчуванням. З цим ви розберетеся у майбутньому, якщо захочете працювати над індивідуальним проектом. Зараз перейдіть у вкладку «Game».
  6. Тут вам знадобиться знати три основні області робочого середовища. Зліва знаходяться всі інструменти керування, додавання предметів, блоків та скриптів. Посередині розташовується сам ігровий екран, а нижче показано всю карту. Праворуч відображено невелике вікно з усіма присутніми шарами та функціями керування ними. Воно може вільно переміщатися по всій області вкладки.
  7. Погляньмо, як діє шар головного персонажа. Виберіть рядок "Player"після чого навколо чоловічка з'явиться синій прямокутник. Він відповідає за переміщення та трансформацію об'єкта. Тобто, ви можете поставити його під будь-яким кутом, змінити розмір або початкове положення на карті.
  8. Наступний шар «GrassTerrain». Сюди винесено всі блоки, якими пересувається персонаж. Зверніть увагу на доступні блоки зліва. Ви можете виділити їх та помістити в будь-яке місце на ігровій зоні, щоб продовжити карту для переміщення персонажа.
  9. У цій же панелі трохи нижче знаходиться розділ "Collectables"який відповідає за додавання золота та інших предметів колекціонування. На цьому прикладі ми розглянемо створення та доопрацювання нового шару. Спочатку створіть новий рядок у "Layers"і дайте їй назву. Потім виділіть її та помістіть необхідну кількість монет на карту.
  10. Приблизно такі ж дії здійснюються з чекпоінтами, точками, що завершують, NPC та іншими ігровими елементами. Бажано кожен тип об'єктів додавати в новий шар, щоб потім не тільки не заплутатися, але й не помилитися з присвоєнням скриптів.
  11. Зараз повернемось до наших монет. Перейдіть до розділу "Scripts"через саму ліву панель. Де опуститеся вниз і натисніть скрипт під назвою "Score Collectable". Потім вибраним скриптом слід натиснути на кожну монету. Таким чином, ви забезпечите коректне колекціонування та позначте ті самі елементи.
  12. У режимі редагування кожного готового скрипту є безліч корисних налаштувань, про які йдеться в офіційних уроках. Тут ви можете додати звуки, налаштувати анімацію та інші дії, які будуть виконуватись при досягненні певних умов.
  13. Однак, це ще не все. Є функція власноручної будови скриптів, яка запозичена з відомого багатьом софту для дітей, що навчає програмування. Тут зліва виділено всі окремі дії. За допомогою них складається єдина таблиця скрипту, що утворює ряд дій, що виконуються після досягнення зазначеної мети, наприклад, підбору монети або попадання в кадр NPC.
  14. Якщо під час розробки ви захочете протестувати працездатність гри, натисніть кнопку "Play", що знаходиться праворуч угорі.
  15. Почнеться запуск програми. Він займає певну кількість часу, що залежить від складності проекту та потужності комп'ютера.
  16. Далі відобразиться стартове вікно, де потрібно розпочати гру або перевірити дію, наприклад, кнопки "Help".
  17. Переміщайтесь по карті за допомогою стрілок або заданих клавіш керування. Обов'язково перевірте дієвість усіх доданих скриптів у різних ситуаціях, щоб у майбутньому не виникло проблем із проходженням у інших гравців.
  18. Після завершення розробки гри або потреби зробити перерву ви можете зберегти процес або експортувати файл на комп'ютер. Повноцінне завантаження готового проекту доступне лише після придбання розширеної версії цього онлайн-сервісу.

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

Як вже було сказано раніше, подібних Gamefroot сервісів існує безліч, всі вони працюють приблизно за одним і тим же принципом. Однак у вас навряд чи вийде знайти сайт із російською локалізацією, тому доведеться освоювати англійську мову інтерфейсу.

Спосіб 3: Середовище розробки та мова програмування

Ми підійшли до найскладнішого, але водночас цікавого способу — використання мови програмування як інструмент для написання власної гри. Відразу хочемо відзначити, що зараз ми не надамо єдиної універсальної інструкції, яка допоможе розібратися з усіма аспектами, оскільки скласти такий матеріал нереально. Натомість надамо навідні матеріали для тих, хто зацікавлений у навчанні та подальшому розвитку своєї особистості у сфері геймдев.

Наприклад візьмемо відому мільйонам гру Minecraft. Звичайно, вона досить проста, але в той же час показує, що навіть одна людина може власними силами створити проект із нуля, який стане популярним у всієї світової спільноти. Цей додаток спочатку писався мовою Java, а працював з нього Маркус Перссон (Notch). З цього виходить, що практично будь-який користувач, почавши вивчення Java, зможе досягти хоча б трохи наближеного результату, написавши свій проект. Однак для цього доведеться чимало працювати. Існують спеціальні факультети в університетах, які навчають основам програмування, але не всі хочуть подаватися до ВНЗ, тому звертають більше уваги на платні курси чи безкоштовні матеріали, підручники. Усі їх не перерахувати, вкажемо лише один із відомих сервісів для початківців під назвою JavaRush.

Весь курс заснований на практичних заняттях із докладним та зрозумілим поясненням. Перші уроки доступні безкоштовно, щоб користувач зміг зрозуміти, чи варто надалі приділяти увагу подібному навчанню. Орієнтування тут йде тих користувачів, хто раніше не стикався з кодингом, а пояснення, ілюстрації і подача матеріалу особливо зацікавить підлітків. Однак є у цього сервісу і мінуси, серед яких дуже виділяється затягнутість уроків і величезна кількість повторів одного і того ж матеріалу, що в майбутньому починає дратувати. Спробуйте ознайомитися і пройти уроки на JavaRush, скориставшись наведеним нижче посиланням.

Прості програми можна створювати і мовами, які вивчити легше. Наприклад, зараз досить швидко розвивається Python, а на ринку з'являється безліч вакансій для Python-розробників. На скріншоті нижче ви бачите практично повний фрагмент коду, який описує відомий додаток "Змійка".

Тепер подивіться, як виглядає ця гра на скріншоті далі. Такого результату можна досягти вже через два тижні навчання, проте для цього доведеться докласти чимало зусиль.

Що стосується проектів AAA-класу, то Java і Python значно здають свої позиції перед C і C++. Переважна більшість ігрових движків написані саме на цих ЯП. Вони розробляються спеціально для великих компаній або запозичуються у незалежних виробників. Крім цього у великих проектах часто задіяно одночасно кілька мов програмування, що задає необхідність програмістам вивчити їх усі. З цього виходить, що почати свій рух на шляху розробки великих проектів не так просто. Для цього точно знадобиться записатися на онлайн-курси або вступати до вищого навчального закладу. Якщо ви зацікавилися цією справою, ознайомитеся з одним із найвідоміших курсів зі створення ігор від GeekBrains за вказаним нижче посиланням.

Під час вивчення ЯП слід подбати і про середовище розробки, де писатиметься код. Розібратися з цим допоможе наш окремий матеріал далі, де детально розповідається про найпопулярніші та найякісніші IDE для різних мов.

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

Ця стаття є першою в цілому циклі матеріалів для тих, хто хоче стати творцем ігор. Якщо ви молоді, амбітні і сповнені ідей, а руки сверблять зробити "вбивцю GTA" або "MMORPG типу WoW, але крутіше", то ви знайшли те, що шукали- керівництво новачка зі створення ігор. Моя мета - дати читачеві загальне уявлення про те, як же все-таки виглядає процес створення ігор і розвіяти ті ілюзії, які могли скластися на цей рахунок, щоб згодом ви змогли уникнути помилок, що робляться багатьма. Як і в будь-якій справі, половина успіху - це правильна підготовка, тому чим повніше ви з самого початку уявлятимете всю картину - тим більшого успіху зможете досягти.

На даний момент цикл статей включає наступні матеріали, який згодом доповнюватиметься:

1. Створення ігор для початківців






Розробник Ігор- У Простонародії "Чайник"

Отже, після чергового вечора за ви подумали-а чим я гірше?.. Подумали і вирішили, що ось він, шанс на загальне визнання-пора створювати ігри своєї мрії! Здається, що в цьому немає нічого складного, але ви помиляєтеся... серйозно помиляєтесь. З цього, мабуть, ми й почнемо.

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

Так вже склалося, що найперший етап є і найпривабливішим - це момент народження ідеї, її поверхневого опрацювання, миті творчості. У такі моменти можна годинами нарізати кола по кімнаті, уявляючи, яким класним все має вийти і якого визнання можна досягти, якщо втілити в життя нову ідею. Захоплення своїм творчим генієм може переповнити судину, і в такому разі воно вимагатиме виходу - найчастіше незріла ідея виплескується на одному з тематичних форумів, в темі із заголовком виду "Збираю команду для розробки гри, потрібні всі". Де успішно висміюється досвідченішими товаришами по цеху, і, варто визнати, часом дуже справедливо.

Створення Ігор – Розвага?

На жаль, це не так. Навіть якщо не торкатися професійної роботи в індустрії виробництва ігор, то і аматорський проект - це не розвага в прямому розумінні цього слова. Звичайно, процес роботи над втіленням своїх ідей приносить певне задоволення і зручний як засіб самореалізації, але... Як уже було сказано, найприємнішим є момент народження ідеї та її опрацювання, але потім неминуче наступають "трудові будні"з їх повторюваними діями, нудною копіткою роботою і тим, чим займатися ну зовсім не хочеться (а оскільки створення ігор-досить різнопланова робота, то такі речі напевно будуть, особливо якщо ви працюєте поодинці). У результаті в такому болоті тоне мотивація, а разом з нею - бажання займатися своїм проектом.

Будьте готові до того, що навіть відносно невеликий ігровий проект може забрати у вас не один місяць часу на його завершення. Подумайте-достатньо у вас мотивації, щоб продовжувати працювати над втіленням своєї ідеї навіть після того, як початковий азарт згасне?.. Напевно, не помилюся, якщо скажу, що частка проектів, не доведених до кінця і кинутих на різних етапах розробки, прагне до 99%... Адже ви не хочете поповнити це число своєю ідеєю, правда?

Типовий Портрет Початківця Розробника

Нехай пробачать мене ті, хто пізнає себе в цьому описі - закликаю не ображатися, а продовжити читання. Зараз ми спробуємо намалювати типовий портрет розробника ігор-початківця, щоб краще зрозуміти, з чим нам належить мати справу. Отже, початківець "гродів" - це найчастіше учень школи у віці 12-18 років, що раптово загорівся ідеєю створення ігор. Ідея приходить спонтанно або після якогось поштовху до натхнення, на зразок нового фільму чи популярної гри. Як правило, сам він нічого не вміє через вік, брак досвіду та інших причин, тому хоче виступати як " керівника"і/або" сценариста", "автора ідейВідповідно, так як самостійно з такими навичками зробити нічого хоча б віддаленого нагадує гру, не можна, то потрібна "команда", яку даний генератор геніальних ідей намагається зібрати на одному з тематичних форумів.

При найближчому розгляді ідея виявляється клоном чогось популярного та відомого, "але краще". Так як уявлення про те, чого, власне, хочеться, і як організувати продуктивну роботу, ні, то в команду запрошуються всі або багато. У результаті така "команда" складається з випадкових людей, які протягом тижня-двох створюють видимість бурхливого обговорення "проЕкту", іноді навіть щось намагаються зробити (на зразок 3D-моделі з набору примітивів), але приблизно через цей же час колишній ентузіазм сходить на "ні", у членів команди з'являються невідкладні справи/сесія/уроки/бабуся захворіла і вся витівка благополучно розсипається як картковий будиночок. Знайома картина?

Розробка Ігор- Професія чи Хобі?

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

Любитель, як правило, має інше джерело доходу (у разі, якщо вона вже досить доросла людина), тому над ним не висить питання комерційної успішності свого проекту. Аналогічно для тих, хто навчається в школі/ПТУ/ВНЗ- вони можуть працювати над грою на своє задоволення, кинути в будь-який момент, реалізовувати будь-які ідеї і взагалі відчувають набагато більше свободи у своїх діях. З іншого боку, вони не можуть присвятити вивченню інструментів і отриманню нових навичок достатньо часу, тому в світі ігор завжди серйозно відстають технологічно і якісно.

Професіонал- Він і в Африці професіонал. Він робить свою роботу та отримує за це гроші. Як правило, працювати доводиться над чужими ідеями, і благо, якщо вони здаються цікавими, але іноді все одно доводиться працювати над тим, що тобі не подобається. Так як рівень майстерності є визначальним у професійній діяльності, то такій людині доводиться йти в ногу з часом освоювати нові технології, програми, прийоми, техніки і т.д. Він може дозволити собі відвідувати семінари, курси підвищення кваліфікації, витрачати достатньо часу на книги та відеоуроки – словом, перебувати в постійній гонці за право вважатися спеціалістом своєї справи.

Є і третій варіант - це незалежні розробники (інді). На мій погляд, це найпривабливіший шлях для тих, хто має достатній талант і здібності для того, щоб займатися розробкою ігор "від і до" самостійно або в невеликому колективі. В наявності плюси такого підходу - можна працювати над втіленням своїх ідей і в той же час заробляти на цьому.

Увібравши в себе плюси професійного та хобі-підходу, інді-розробка не позбавлена ​​ложок дьогтю в бочці меду.

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

Ціна Ідеї для Ігри


Часто доводиться стикатися з ситуацією, коли на форумі про розробку ігор з'являється тема, в якій автор представляє свій проект, але уникає будь-яких деталей, обмежуючись лише загальною інформацією. У у відповідь прохання дати подробиці автор стверджує, що зробить цього, т.к. ідеї є унікальними і можуть бути вкрадені. Безперечно, деякі ідеї можуть бути дуже вдалими, і їх цілком розумно тримати в секреті, але...

Не зомлійте, але ідея сама по собі не має жодної ціни. Нуль. Навіть найгеніальніша ідея нічого не варта. Ідей безліч, і деякі з них дуже і дуже вдалі. Тим не менш, ідея не має практичного значення до тих пір, поки вона не реалізована у вигляді чогось менш абстрактного.

Подумайте: коли востаннє ви бачили справді оригінальну ідею? "Аватар"? Ні-якщо розкласти ідею до рівня концепції, то все просто: земляни з майбутнього видобувають ресурси на чужій планеті, ігноруючи інтереси місцевого населення. Один із землян переймається співчуттям до аборигенів, стає частиною їхнього народу та очолює боротьбу проти загарбників. Просто, чи не так? Crysis? Класичний шутер про елітного спецназівця із супер-здібностями, які йому дає костюм, та прибульцями з космосу. World of Warcraft? Гра, дія якої відбувається у багатій на події та передісторію всесвіту, з високою роллю сюжетної складової, різнобічними складними взаємодіями гравців та потужною економічною системою.

У всіх цих ідеях найцінніше те, ЯК вони були реалізовані. Навіть найпростіша ідея, будучи втіленою в життя на високому, якісному рівні, з глибоким опрацюванням, може "вистрілити" і стати хітовою грою/фільмом.

Таким чином ми приходимо до висновку, що для розробника-початківця питання "як" набагато важливіше питання "що". Очевидно, що ідея створення MMORPG нового покоління (так званий next-gen) абсолютно марна для більшості розробників, оскільки в силу об'єктивних причин вони просто не можуть реалізувати її в будь-якому вигляді.

Англійська Мова для Розробника Ігор

На окрему згадку заслуговує питання вивчення англійської мови. Очевидним є той факт, що ігрова індустрія в переважній більшості своїй використовує англійську мову як мову міжнародного спілкування. Звичайно, є національні ринки та їх розробники, які говорять своєю мовою (наприклад, Росія та Японія), деякі з них можуть бути дуже великими і навіть величезними (Китай) - але це не скасовує того факту, що інструменти розробки, навчальні матеріали та Документація майже завжди використовує англійську мову.

Я переконаний у тому, що знання англійської мови - це критичний фактор, який має величезний вплив на той шлях, який має пройти, щоб стати розробником ігор. Навіть із суто практичної точки зору здатність читати і розуміти англійські тексти - величезний козир у боротьбі за місце під сонцем. Якщо ви відкриєте вакансії російських компаній-розробників, то в 90% з них знайдете такий пункт, як "технічна англійська на рівні читання та розуміння".

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

Запитується-навіщо задовольнятися краплею, якщо можна випити море? Знання та розуміння англійської - це ваш ключ до величезного масиву корисної та актуальної інформації, сам факт доступу до якої дасть вам десять очок фори. Компанії Digital Tutors та Gnomon Workshop мають у своєму активі тисячі годин навчального відео по всіх областях застосування популярних 3D-пакетів, таких як Maya або 3DS Max. Англомовні сайти кишать статтями про геймдева, а на форумах можуть підказати вирішення складних проблем - просто тому, що кількість людей ТАМ незрівнянно вище з кількістю людей ТУТ. Беріть найкраще із двох світів!

Що робити? Вчити мови - воно того варто, навіть якщо через рік ви закинете геймдев. Як? Не спати на уроках у школі, записатися на курси, використовувати самовчителі-шляхів багато, було б бажання. Особливу увагу варто приділити лексиці - вам зовсім необов'язково вміти говорити цією мовою, головне - вміти читати і розуміти прочитане. Вже після цього можна буде почати розвивати навичку сприйняття англійської мови на слух-і в цьому можуть допомогти відеоуроки з 3D-графіки, якщо ви художник, або аудіоуроки з англійської мови. Ще раз повторюся - по той бік мовного бар'єру величезний світ, повний інформації. Не мати до нього ключів - все одно що вчитися по чернетці, коли поруч є бібліотека.

Сергій "Treidge" Данченко— автор блогу, вільний 3D-художник та розробник ігор, веб-розробник на Drupal та людина-оркестр із досвідом у деяких інших областях. Особисте кредо - "хочеш зробити щось добре, зроби це сам". У моменти особливого натхнення пише вірші та грає у волейбол. Основні професійні інструменти - Autodesk Maya, Autodesk Mudbox та Adobe Photoshop. Без розуму від індиків та папуг. Дякую за увагу, заходьте знову!

  • 83413 переглядів

3/4 часу на свою ідею, 1/4 на вивчення мови - дивишся, і через пару місяців вже можна буде розуміти написане, а там і до вільного читання не так вже й далеко... Я ось конкретно движком Unity 3d цікавився, російською відеоуроків або статей - крихти, а ось англійською - вже десятки годин на всі теми.

Гарна статися, правда мені здається, цю тему можна розкривати нескінченно. Я додав би обов'язкову умову, "любити читати" і шукати тонни інформації в інтернеті. Якщо щось знайти людина і може в інтернеті, а ось подужати наявну літературу допустимо в 500 сторінок, це вже може стати проблемою, а це я вважаю основним фактором, читати читати читати, і тільки потім робити робити робити.
Дякую, читатиму вас ще:)

Згоден, цю тему торкнулася краєчком в абзаці для фахівців. З навчальними матеріалами і справді проблема - охочим доступні просто тонни книг та відеоуроків, щоб перечитати та переглянути які - не один рік потрібен. Часто спрацьовує інстинкт хом'ячка - натягати всього і більше, і щоб потім все це добро лежало і покривалося товстим шаром пилу (каюся, теж таким грішний). Здається, що сам факт володіння таким обсягом інформації робить тебе професійнішим, але це далеко не так.

Загалом, я сказав би, що потрібно читати Іробити, і лише тоді можна дійти успіху. Пам'ятаю, в одному з відеоуроків інструктор нагадував - "Люди, ви - не рослини! Ви не можете вбирати знання так само, як рослини вбирають сонячне світло. Не просто дивіться, але й робіть, експериментуйте, виходьте за межі того, що я вам показую .". Дуже правильне зауваження зробив цей чоловік.

20 Лис, 2011

Дуже сподобалася стаття. Ще дізнався, що автор хоче свою першу гру реалізувати. Я малювати не вмію, але розробляю двигуни для ігор на Android, Windows, Linux, Mac (за допомогою Open Source & Cross Platform Framework LibGdx) знаю box2d, OpenGL. Раніше займався двигунами для Інтернету, але останні 2-а роки вивчаю Android платформу. Хочу також як і автор реалізувати свою 1-шу гру та випустити її на Андроїд Маркеті. Ідея вже є (на фізику та логіку, 2Д, вид збоку, зараз продумую рівні), але вона дуже абстрактна ще, як автор сказав (золоті слова) ідею треба ще реалізувати і тільки тоді буде ясно принесе вона успіх чи ні;-) Якщо цікаво, то пишіть мені на пошту... Успіхів та Удачі!

Дякую за відгук і пропозицію, але поки в моєму розпорядженні немає необхідних ресурсів для того, щоб займатися безпосередньо розробкою ігор, тому змушений відмовитися Удачі в розробці, якщо все ж таки наважитеся почати її - Android стає все популярнішим, шкода тільки, що користувачі розпещені безкоштовним софтом На відчутний прибуток може розраховувати лише дуже популярна гра.

Як правило, сам він нічого не вміє через вік, брак досвіду та інших причин, тому хоче виступати в якості "керівника" та/або "сценариста", "автора ідей"
Відповідно, оскільки самостійно з такими навичками зробити нічого хоча б віддаленого нагадує гру, не можна, то потрібна "команда", яку даний генератор геніальних ідей намагається зібрати на одному з тематичних форумів.

Дуже добре ваше спостереження підкреслює сайт:
https://sites.google.com/site/mysuperpupergame/

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

Раптом хтось приєднається:)

Для початку постарайтеся визначити, до якого напряму у вас можуть бути нахили. Може вам подобається малювати, тоді створення графіки – очевидний вибір. Або ж навпаки - малювати ви не вмієте, але сильні в математиці та технічних науках - тоді програмування може стати вдалим вибором. Хоча всьому цьому можна навчитися і не маючи якихось схильностей, інша справа, що робота в "неправильному" напрямку не буде приносити ніякого задоволення і навпаки, швидше буде тягарем. Для початківців добре підійдуть конструктори ігор типу Game Maker(найвідоміший). Почати можна з нього, ну а далі за потребами – потрібна буде графіка для гри, тоді варто спробувати малювати, потрібні будуть скрипти – ось вам і програмування. Головне - починати з найпростішого типу Понга (це гра така), арканоїдів і т.д., і дуже швидко ви самі зорієнтуєтеся, що вам потрібно і для чого. Як кажуть у таких випадках – Інтернет знає все, потрібно лише пошукати ©. Що б ви не обрали – у вашому розпорядженні буде величезна кількість освітніх ресурсів. Дерзайте .

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

11 Лют, 2012 10 Бер, 2012

Блог ну прямо з мене списаний практично.
З першою частиною блогу згодна на всі 100%. Але з приводу іноземної мови, ось тут я "закипіла".
Не всі люди можуть вивчити англійську мову або взагалі будь-яку іншу іноземну мову. Не всім це дано. Виходить, що якщо людина не знає англійської мови, їй ніколи не стати розробником ігор чи просто професійним програмістом?
Для того, щоб вивчити англійську мову, також потрібні роки, потрібні не тільки книги та підручники, самовчителі та аудіоуроки з мови, але вільний час. А його вічно бракує. По собі знаю, що поки вчиш одне, інше забувається. Доводиться знову повертатися на початок. Повсякденне життя таке, що часто доводиться робити "звичну роботу". Приходячи додому з роботи ніяких сил вже іноземною мовою не залишається, навіть за наявності величезного бажання та мотивації! Втома та нестача часу зводить всі зусилля з вивчення іноземної мови нанівець. Доведено на власному досвіді!
Все ж таки не згодна я з автором блогу з приводу іноземної мови. Проблему навчального матеріалу дуже легко вирішити, а саме перекладати книги, газетні та журнальні статті, і навіть самі відеоуроки з американських сайтів російською або будь-якою іншою мовою. Навіщо новачкові витрачати час іноземною мовою, коли є інші люди, які займаються цим самим перекладом професійно? Навіщо взагалі потрібні тоді перекладачі? Невже в жодній з американських великих компаній із розробки ігор немає перекладача? У житті не повірю у це. До того ж, якщо існують колективи, де співробітники розмовляють обома мовами, чому відразу не написати літературу, документацію, статтю чи відеокурс двома або трьома мовами? Вся справа в тому, що цим треба комусь зайнятися з команди розробників програмного продукту, але ніхто не хоче. Ось у чому питання. Банальна лінь! Важко написати одразу два документи. Напишу стандартний англійською. А тому, кому треба, нехай сам мучиться з перекладом, витрачає ще більше часу на пошук інформації, перш ніж реально почнеться навчатися того, що йому потрібно.

Ех, якби все було так просто... Відповім по порядку.

Звичайно ж, не всі можуть вивчитианглійську мову, але навчитися читати англійською та розуміти її може практично кожен, адже навіть середнього розуміння вже буде достатньо для того, щоб отримувати потрібну інформацію з англомовних джерел. Інше питання – чи потрібно це конкретній людині чи ні. І це суто індивідуальне рішення, від якого залежить, ця людина займатиметься пошуком можливостей зайнятися вивченням чи ні. Безперечно, існує безліч ситуацій, коли викроїти час для додаткового заняття може бути складно, але ж ніхто не змушує бути професором трьох наук і кандидатом у доктора ще п'яти. Ідеальних умов для саморозвитку не буде ніколи, завжди щось заважатиме - сім'я, робота, настрій чи відсутність вільного часу. Але зрештою кожен сам розставляє пріоритети і вирішує, як йому використовувати той час, який він має, вільний він чи ні.

Ця частина моєї статті написана як рекомендація насамперед тим, хто серйозно хоче пов'язати своє життя із розробкою ігор. Я щодня стикаюся з необхідністю читати та слухати англійською мовою і щодня відчуваю, наскільки мені це допомагає. І так, я впевнений, що стати в повному розумінні слова професіоналом без знання мови дуже складно, причому себе професіоналом я не вважаю. Звичайно, знайдеться достатньо людей з цієї галузі, які мовою не володіють і проте чогось досягли, але в моєму уявленні професіонал - це та людина, яка досконало володіє своєю професією, йде на гребені прогресу, володіє найсвіжішими технологіями і отримує інформацію про них із перших рук, тобто від творців. Які у 90% випадків усю документацію та інші матеріали пишуть англійською мовою як найпоширенішою мовою та мовою міжнародного спілкування. Фахівець без знання мови отримає доступ до таких матеріалів у кращому випадку з великою затримкою, або ж з третіх рук, а найімовірніше взагалі ніколи. Мені б не хотілося потрапити на прийом до стоматолога, який через мовний бар'єр вибиватиме карієс зубилом і молотком, тоді як у сусідній країні для цих цілей давно використовують лазери.

Проте проблема перекладу будь-яких матеріалів дійсно може бути вирішена, і я впевнений - буде вирішена в найближчі роки, може бути 10-15 років. З розвитком інформаційних технологій будь-який переклад буде здійснюватися на 100% точно і "на льоту", а професія перекладача згодом зникне в Лету. Але поки що такі системи не створені - доводиться миритися з поточною ситуацією, адже простого її вирішення поки що немає.

Перекладати статті, книги чи уроки, безумовно, можна, але тільки хто буде цим займатися? Професійним перекладачам, як і будь-яким іншим фахівцям, потрібно платити і платити багато. Займатися перекладом вузькоспеціалізованої літератури просто так ніхто не буде, хіба що ентузіасти. Але чи багато їх цих ентузіастів? Крапля в морі, причому таке суспільно-корисне навантаження дуже швидко їм набридає. І я категорично не погоджуюся з тим, що новачкам не потрібно витрачати час на вивчення мови. Любителям – можливо, але майбутнім професіоналам – ні.

Знання двох-трьох іноземних мов - це серйозна інвестиція у своє майбутнє, перевага в будь-якій конкурентній боротьбі, необхідна навичка, а не примха. У ХХІ столітті, коли світ глобалізується і зменшується, знати лише свою рідну мову означає свідомо обмежувати свою свободу, насамперед свободу отримання інформації.

У багатьох компаніях, звичайно ж, є перекладачі, але займаються зазвичай іншими справами - перекладом безпосередньо ігор. З іншого боку, є розробники ігрових двигунів або інших систем, які є інструментами, які вони (розробники) хочуть продати якомога більшій кількості компаній та людей. Документація таких продуктів часто перекладається іншими мовами, але англійська - це стандарт, до якого вже потім додається корейська, китайська або німецька мови.

Це – їхній бізнес. Ніхто не займатиметься витратою ресурсів на адаптацію свого продукту (переклад) до ринку, на якому не можна продати достатню кількість копій свого продукту. Насамперед переклади одержують ті мови, частка ринку яких найбільша. У випадку з ігровими двигунами це зазвичай китайська мова, до якої поступово підбирається корейська. У сумі ці три мови, мабуть, покривають до 80% ринку. Російськомовні покупці ж можуть становити 2-3% від загального обсягу - ось вам і причина, через яку існує дефіцит підручників та курсів російською, виробникам просто не вигідно займатися цим.

І так у всьому - виробники чого завгодно насамперед прагнуть задовольнити потреби більшості, і ця більшість може набувати різних форм. Наприклад, корейською мовою говорять вдвічі менше людей, ніж російською, проте ринок ігрових движків там значно більше, ніж у Росії. Тому документація корейською для движка UDK є, а російською - ні.

Зрозумійте мене правильно, вчити чи не вчити – справа суто наша власна. Світ улаштований таким чином, що під наші потреби він підлаштовуватиметься лише у невеликому відсотку випадків. Але найчастіше від нас самих залежить, чого ми можемо навчитися взяти від цього світу найкраще.

10 Бер, 2012

Ух яка відповідь велика.
Втомилася я сьогодні, думки бігають кругом та й очі болять... Ай гаразд.

На "цю тему" можна розмірковувати необмежену кількість часу. У Росії з навчальним матеріалом дійсно напружено. У малорозвинених містах (такому в якому я живу) спеціальна література це велика рідкість. Здебільшого на полицях стоять однотипні книги. У всіх книг практично однакова назва, єдина, що їх відрізняє ця картинка на обкладинці та ім'я автора. За внутрішнім змістом книги абсолютно ідентичні! З такою пропозицією багато чого не навчишся.

Звичайно для саморозвитку знати іншу мову потрібно, нехай навіть небагато, але особисто в моєму випадку це "згубна справа". Щоб вивчити, запонити і потім "відтворювати" англійські слова я витрачаю не один день. Переклад волію робити вручну старим дідівським методом "словник" + "ручка" + "папір". І цей дідівський метод вкрай повільний. На день не більше одного, двох абзаців. Кожне слово перекладаєш! А потім ще грамотно зібрати перекладені слова в "текст, що має сенс". Дуже важка робота і таким темпом одну сторінку тиждень перекладати можна:-). І як далеко на цьому можна "поїхати" в моєму випадку? Це нічого не призводить як правило.
P. S. Перекладачі (програми) працюють за тим же принципом. Суцільний набір перекладів слів, причому не найточніший.

Зовсім інша справа, коли знаходиш у Мережі (оскільки іншого джерела немає) книгу в електронному вигляді або підручник у якому все розписано з самого початку, по поличках розкладено, простою і зрозумілою мовою розказано. Наприклад книга, яку я зараз читаю "Як написати гру для ZX Spectrum". Дуже цікава та зрозуміла. Російською. Єдине, на що я витратила час, це на пошук емуляторів операційної системи Спейсі та редактори для створення ігор. Ось цьому реально можна навчитися, відразу! Все зрозуміло і час економить і необхідні, нехай базове знання новачок отримає.

Якщо займати "вивченням" англійської, то походу надходження інформації. Нехай навіть методом "тику" :-|. А інакше можна взагалі ніколи не досягти бажаного результату.

Рунет великий, а користі мало. Багато однотипних форумів, блогів, тощо, поки необхідне знайдеш, багато часу витратиш. Не навчилися ми систематизувати навчальний матеріал і робити його доступним для народу.

В ідеалі, найкращим навчанням, є створення найпростішої іграшки чи програми, хай не примарною "сирою". Але з найбільш докладним, покроковим описом. З нуля. Нехай шматками, якимись уривками невеликими. Але насамкінець, отримати хоч саму дохленьку іграшку. Кінцевий результат. Але ж не в кожній книзі описуються проекти! Ніхто не витрачатиме на цей час і сил.

Гаразд, я піду байки, пізно вже. Ще статтю вранці закінчити треба, вже сил ніяких, нічого не бачу.

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

Перепрошую, не прописав нік раніше. Щодо пошуковиків: Так, мені знайомий такий момент. Тим не менш, як я вже помічав - величезна кількість сайтів перебуваючи у все тих же пошукових системах мають у себе велику кількість матеріалу. Крім того є ще й такі загальнодоступні джерела, які, за великим рахунком, не проти копіювання. Наприклад, Вікіпедія. Але за такою логікою виходить що й статті з Вікіпедії так само не заохочуються пошуковими системами?

Так, не заохочується, причому у випадку з Вікіпедією це більш показово, ніж з іншими сайтами та їх контентом, т.к. зміст надпопулярної Вікіпедії набагато простіше використовувати як зразок, з яким порівнюватиметься контент. Тут логіка пошукача дуже проста. Адже якщо контент загальнодоступний – навіщо його копіювати? Правильніше вказати посилання на джерело, що підтримується в актуальному стані (тобто енциклопедичні статті можуть часто виправлятися та доповнюватись). Той самий Google, наприклад, зацікавлений лише в унікальному контенті, тобто. такому, котрого ніде більше немає. Звичайно, ніхто не може заборонити зробити "дзеркало" Вікіпедії і викласти його в інтернеті, але пошуковикам такий сайт в принципі не буде цікавим, тому що це не так. їм доведеться витрачати ресурси та час на індексацію того, що й так уже проіндексовано. Цілком природно, що дзеркалювання контенту (копіювання) не заохочується, а в деяких випадках взагалі карається.

Зрозуміло. За великим рахунком, з мого боку, питання копіювання - це не "злісне копіювання всього і вся". Скажімо так, існує деякий матеріал, який, в принципі, переписати можна, але навряд чи вийде дуже краще. "Навіщо вигадувати велосипед?" так би мовити. Унікальні статті та контент мають місце, але... Декілька статей було - таки скопійовано.

Щодо посилання: Це ефективно, але малоінформативно і змушує того, хто її користується переходити на ресурс без можливості прочитати все в одному місці. а вже потім і перейти за посиланням, якщо здається, що є ще багато цікавого матеріалу.

Для мене також залишається питання в тому що незважаючи на, як ви сказали, "дзеркалки" величезна маса сайтів копіює, наприклад. новина один одного до тексту. До того ж самі сайти на перших рядках та. що цікаво. один і той же сайт може по кілька (а часом і кілька десятків разів) фігурувати в пошуку і не дуже помітно що подібні сайти як - або "караються".

Наша "модель копіювання", про яку йшлося вище, вкрай примітивна та перебільшена, тому не передає всіх нюансів роботи пошукових алгоритмів. Я лише хотів помітити, що в загальному вигляді правило "тільки унікальний контент" працює дуже добре, а "неунікальний контент" може вийти боком. Звичайно ж, далеко не факт, що саме так і буде, але на те воно і загальне правило, що з нього бувають винятки. Наприклад, згадані сайти новин мають на меті поширювати інформацію та доносити новини про події до читача якнайшвидше. У таких умовах природно, що одного разу написана новина може розлетітися у вигляді скопійованого тексту сотнями сайтів протягом хвилин. Однак, як кажуть, чукча теж не дурень, і пошукові системи вміють відрізняти новинні сайти-портали, де пріоритет віддається свіжій інформації, від сайтів іншої спрямованості. Наприклад, скопійована новина, актуальна, може вилізти в ТОП і протриматися там якийсь час, але як тільки інформація стане неактуальною - в більшості випадків вона серйозно просяде у видачі.

Різні ігри