Порция позитивизъм, еп. 2 – Създай нещо!

 SINCE 1998
  • Играй си играта, човече!

В момент, в който отвсякъде сме засипвани от мрачни статистики и прогнози, не е лошо малко да разведрим погледа си. Продължавам с втората част от моя опит да ви сипя малко позитивизъм, от който смятам, че всички имаме нужда в момента. Изгледахте ли първата част? Ще се радвам да споделите дали ви е била полезна или пък сте я сметнали за глупава. Дори и да е второто, този път ще ви представя няколко по-прагматични идеи, които се надявам да ви вдъхновят и да ви откъснат за малко от потока на неприятните новини.

Всички обичаме да играем видеоигри – мисля, че това е безспорно и затова сме се събрали. Най-вероятно голяма част от вас са се замисляли дали да не се пробват да създадат своя игра, но все нещо ги е спирало. В главата ви сигурно се въртят мисли като „Ама аз не съм програмист”, или „то сигурно се иска много математика” и други подобни мрачни съждения, с които сами си налагате граници. Ако по време на настоящото положение ви се е отворило много свободно време, защо все пак не изследвате тези граници?

Не е задължително да почвате с разработка на игра – ако съвсем си нямате на идея що е то програмиране, защо не започнете с нещо по-лесно, например да създадете уеб страница на любимата си игра? (Да, съвсем отговорно заявявам, че за мен уеб разработчиците също се числят към редиците на „истинските” програмисти, каквото и да мислят някои снобари). Лично аз много, много отдавна работих по лична фенска енциклопедия на любимата си игра по това време – Red Alert 2, като създавах отделни страници за всяка единица, пълни със статистики, техните реплики и т.н. За целта използвах програмата Microsoft FrontPage – а тя не се поддържа от 2003 г. насам, смятайте колко отдавна е било. Основните езици, които задвижват уеба – HTML и CSS са сравнително лесни за научаване на базисно ниво (разбира се, като с някои игри: отнема цял живот, за да станеш добър), а и чрез тях ще се научите как да давате инструкции на компютъра, така че да прави каквото му кажете.

Ако все пак искате да работите именно по игра, има редица инструменти, които не изискват никакво или много основно ниво на познания по програмиране. Един от най-известните сред тях е Game Maker – програма, която ви позволява да създавате игри, да вкарвате логика в тях и какво ли още не, само чрез менюта. Неотдавна ви представихме един български проект, наречен Eslander, създаден именно чрез Game Maker.

Но да кажем, че искате да се захванете сериозно с разработката на нещо, но не и на цял продукт – може би в такъв случай модването е вашето поле! Хиляди игри поддържат модове, официално или неофициално, може би дори любимото ви заглавие има фенски разширения, защо не се загледате в тях? Отново ще дам личен пример – в началото на годината, докато играех настолни игри виртуално в Tabletop Simulator ми писна всеки път да подреждам сам карти, фигурки и всичко останало (TTS симулира физически настолни игри, които, както знаете, не се подреждат сами). Казах си, че не е възможно да няма по-лесен начин и се оказа, че има – Tabletop Simulator работи с лек скриптов език, наречен LUA (за когото може би сте чували и на други места, например в Roblox). След около месец гледане на видеа, четене на документация и – разбира се – писане на код, вече имах първата си „скриптирана” игра в TTS.

Чрез LUA всъщност не е необходимо да се ограничавате само до малки модчета за чужди игри – за този език има софтуер, който облекчава разработката на самостоятелни проекти (така нареченият framework), озаглавен LÖVE. Да, името е малко странно, беше леко конфузно да обясня на жена ми защо имам розова иконка на сърце с надпис LÖVE на десктопа… С този софтуер обаче можете да приложите познанията си от малки модчета в напълно ваш проект, който впоследствие да покажете пред света.

Ако пък се чувствате уверени (а няма причина да не сте) и искате да се хвърлите в дълбокото на гейм разработките, не е необходимо да правите собствен енджин от нулата – можете просто да използвате някой от двата най-разпространени, а именно: Unity и Unreal Engine. Може би не знаете, но и двата имат безплатни версии, които можете да ползвате дори и ако продавате играта си. Ще ви поискат пари единствено, ако започнете да правите наистина сериозни приходи, а в този случай вече няма да сте начинаещи. В Unity се използва езика C#, разработен от Microsoft, който се радва на голяма популярност напоследък (хората, които го използват, изглеждат доволни от него), докато в Unreal Engine ще ви трябва с една идея по-тегавия C++. Имайте предвид обаче, че при тези варианти вече математиката не ви мърда.

Но нека и това не ви спира – от известно време за Unreal Engine има откровено казано невероятната система Blueprints Visual Scripting, при която можете да създавате цели игри единствено като създадете „схема” за това как трябва да работят те. Точно така, без нито един ред код! Силно ви препоръчвам да разгледате YouTube канала на Fat Dino – този човек е майстор на Blueprints и често прави клонинги на популярни игри просто за забавление и за да покаже възможностите на Unreal Engine. Имайте едно на ум все пак, че той има бакалавърска степен по компютърни науки, така че не е точно аматьор в областта.

Съвсем накратко ще спомена и други инструменти, които не са точно за създаване на игри, но имат много общо с темата и може би ще са с една идея по-удачни за по-артистично настроените сред вас. Ако искате да създавате 3D модели, които впоследствие да видите оживели в игра, можете да се пробвате с Blender – напълно безплатна програма с отворен код за моделиране, текстуриране, анимиране и какво ли още не. Ако пък искате просто да рисувате… там вече ще трябва да се сдобиете с лиценз за Photoshop или еквивалент. Безплатните програми за обработка на изображения уви не се доближават до възможностите и лекотата на употреба на тази за съжаление изключително скъпа програма.

А откъде ще научите необходимото, за да започнете да се занимавате с нещо такова, може би се питате? Това е лесната част – в интернет и по-конкретно в YouTube има почти безкрайни часове видео, показващи в детайли как да използвате всички тези технологии и езици, а и много други. Мога да кажа, че developer общността е една от най-позитивните и отворени групи, които съществуват на този сайт. Въпреки стереотипа за затворения в себе си задръстен програмист, тази общност е пълна с хора, искрено желаещи да споделят знанията си, така че да имат повече колеги. Което не е нещо, което може да се каже за много други области. Пък и ние геймърите добре знаем какво са безпочвените стереотипи.

С цялото това изпълнено с технически термини излияние се надявам да съм събудил в част от вас желание да направят нещо позитивно с допълнителното свободно време, с което щем или не щем се сдобихме. Надявам се също да не съм изнервил някой програмист твърде много с лаишкото си мнение по темата, но те са готини хора, ще ми простят.  До скоро с нови порции позитивизъм!

Автор: Terwell