Apie būrelį

Sakyk šiam būreliui TAIP ir mokėk ne tik žaisti, bet ir kurti. Kompiuterinių žaidimų kūrimo būrelis yra puikus tiems, kurie mato, ką galima tobulinti, turi idėjų, kokį žaidimą sukurti arba tiesiog mėgsta žaisti kompiuterinius žaidimus. Tai yra įdomus būdas išmokti programuoti ir vizualizuoti savo idėjas. Pabaigus šį programavimo būrelį, žinosi C# programavimo kalbą, suprasi, kas yra kompiuterinių žaidimų saugumas, ką reiškia juos kurti ir kaip sudominti žaidėją. Šis programavimo būrelis keičia požiūrį į kompiuterinius žaidimus!

- Pagilintos Unity žaidimo variklio žinios

- Žaidimų dizaino pagrindai (video game design, level design, etc.)

- Žinios kaip panaudoti ir pritaikyti jau sukurtus 3D modelius, tekstūras, garsus žaidime

- C# programavimo kalbos gerosios praktikos (advanced techniques like interfaces, delegates, etc.)

- Įžanga į OOP pagrindus

- Suprantamo kodo rašymo žinios

- Sukurtas žaidimas nuo 0

- Žaidimo leidimo pagrindai (publishing)

- Žaidimo marketingo ir reklamavimo pagrindai

- Komandinio darbo patirtis IT projektuose

- Ištobulintas mąstymas sprendžiant problemas (problem solving mindset)


Programa

Spalis - Gruodis
Žaidimo variklis

Gilinsimės į vieną populiariausių žaidimų variklių – Unity. Bus tikimasi, kad su pagrindinėmis variklio savybėmis jau yra susipažinta ir daugiau laiko skirsime įgudžių tobulinimui. Kalbėsime apie efektyvų žaidimų variklio panaudojimą, nagrinėsime kokiais būdais geriausia pasiekti konkrečius rezultatus.

Programavimas

Kalbėsime apie C# programavimo kalbą, jos standartus, lengvai skaitomą kodą, jo sąveiką su žaidimo varikliu ir pagrindines funkcijas. Patys rašysime visą kodą bei nagrinėsime jo efektyvumą. Kalbėsime apie sudėtingesnes programavimo paradigmas, tokias kaip: “coroutines“, “actions“, “delegated“. Susipažinsime su paveldėjimo ir interfeisų sąvokomis, tokiu būdų minimaliai susipažindami su objektinio programavimo (OOP) pagrindais. Rašydami kodą bandysime galvoti apie kodo modifikuojamumą, pakartotinį panaudojamumą kituose projektuose, efektyvumą ir atsparumą klaidoms.

Projektai 1.0

Viena didžiausių ir geriausiai pasaulyje žinomų žaidimų kūrimo kompanijų Blizzard Entertainment nebandė visų produktų sukurti nuo nulio, bet vietoje to išnaudojo jau egzistuojančias idėjas ir pavertė jas kažkuo, kas yra žaidžiama visame pasaulyje. Taip Dune ir Warhammer tapo Warcraft, o Moria tapo Diablo. Tokių istorinių žaidimų atgimimo analogijų galime rasti kone visiems kuriamiems žaidimams, todėl ir mes gilinsime programavimo ir Unity žinias, kurdami klasikinių žaidimų prototipus.

Pradėsime nuo mažo projekto prototipo, kuriame patys bandysime atkartoti klasikinio žaidimo veikimą. Tą bandysime padaryti ne lengviausiu ir greičiausiu įmanomu būdu, bet kalbėdami apie kodo plečiamumą, modifikuojamumą, pakartotinį kodo panaudojimą ir panašius aspektus, todėl programuosime su tam tikrais apribojimais ir bandysime suprasti, kokią įtaką tai turi žaidimo programavimo procesui.

Sausis - Birželis
Programavimas

Yra daugybė algoritmų, kurie žaidimuose naudojami nuolatos. Jų žinojimas pagreitina konkrečių žaidimų kūrimą, o geras supratimas ir programavimas lavina loginį mąstymą, problemų sprendimo įgūdžius. Būtent dėl to nagrinėsime dažnai naudojamus žaidimų elementus, pavyzdžiui, dirbtinio intelekto, kelio paieškos, progresavimo taisykles ir žaidimo būsenų valdymo technikas. Iš visų įmanomų algoritmų pasirinksime tik tuos, kurie tiesiogiai prisidės prie tuo metu kuriamo žaidimo papildymo.

Teorija

Sėkmingam kompiuteriniam žaidimui dažniausiai nepakanka, kad jis turėtų tik labai gerą idėją arba sklandų veikimą, todėl aptarsime esminius žaidimų kūrimo elementus: žaidimo dizaino dokumentus, eskizus, tekstūras, modelius, animacijas, apšvietimus bei kompiuterinę grafiką. Taip pat kalbėsime apie garsų ir naudotojo sąsajos dizainą. Plėtosime šias žinias ne iš dailininkų ar kompozitorių, bet iš programuotojų perspektyvos.

Komandinis darbas

Nors yra išimčių, kuomet žaidimą nuo a iki z padaro vienas žmogus, žaidimo sėkmingumo tikimybė beveik visada yra daug aukštesnė, jei kuriama ne po vieną. Svarbu mokėti panaudoti žmonių sugebėjimus ir stipriąsias puses bei išmokti dirbti komandose. Taip ne tik viskas padaroma greičiau, pigiau, bet ir dirbti būna smagiau. Taigi, pradėsime kalbėti apie žaidimų kūrimą kaip komandinę veiklą. Teoriškai kalbėsime apie sudėtingesnių žaidimų, kuriuos įmanoma sukurti tik bendradarbiaujant, specifikas. Praktiškai bandysime pritaikyti „git“ technologiją, kurią programuotojai naudoja visame pasaulyje ne vien žaidimams kurti, bet ir kitokio pobūdžio programavimo projektams.

Žaidimo projektavimas

Bandysime generuoti savo žaidimo idėjas. Kalbėsime apie būdus, kurie padeda tobulinti žaidimo idėją. Susipažinsime su žaidimo dizaino dokumentais (Game Design Document, GDD), kodo architektūros principais.

Verslas

Kalbėsime apie žaidimų kūrimą kaip verslą: žaidimų išleidimą, pardavimus ir pinigų uždirbimą, marketingo reikšmę. Susipažinsime su žaidimų kūrimo industrija, jos verte, perspektyvomis, šiandienine situacija žaidimų industrijoje.

Projektai 2.0

Bus atliekamas projektinis darbas, susiskirstę į komandas, moksleiviai sugalvos paprastų žaidimų idėjas ir joms parengs projekto planus. Šiuos planus bandysime įgyvendinti sukurdami kuo daugiau išbaigtus žaidimus, kuriuos galėtume patalpinti viešai prieinamoje vietoje ir džiuginti savo žaidėjus!

Mokytojas

Zorian Ivanec
Kompiuterinių žaidimų kūrimas

Būrelio informacija

Trukmė
9 mėnesiai
Pradžia
2021-10-01
Dažnis
Trečiadieniais 17:00 - 20:00
adresas
Vilniaus Vytauto Didžiojo gimnazija
100 €/mėn.
Įprasta
85 €/mėn.
Su NVŠ krepšeliu

Moksleiviai atliko praktiką