Koristni nasveti

Econ dude

Pin
Send
Share
Send
Send


Razvoj računalniških iger lahko opravi ena oseba ali podjetje (razvojna ekipa). Komercialne igre ustvarjajo razvojne ekipe, ki jih najame eno podjetje. Podjetja se lahko specializirajo za izdelavo iger za osebne računalnike, igralne konzole ali tablične računalnike. Razvoj lahko financira drugo, večje podjetje - založnik. Založnik se na koncu razvoja ukvarja z distribucijo igre in s tem povezane stroške. Nasprotni pristop je takšen razvoj, ko podjetje na primer s pomočjo digitalne distribucije distribuira kopije iger na lastno pobudo (brez sodelovanja založnikov).

Razvoj največjih proračunskih iger lahko stane več deset milijonov ameriških dolarjev in v zadnjih desetletjih [ kdaj? ] ti proračuni nenehno rastejo, prav tako tudi število razvojnih skupin in časovni razpored. Torej, v poznih devetdesetih letih lahko igro za konzolo PlayStation za končnega kupca pripravi skupina 10 ljudi na leto, za PlayStation 2 (prvo polovico 2000-ih) pa je bila potrebna ekipa od 30 do 50 ljudi in dve leti razvoja, do leta 2012, Šlo je že za skupine več kot 100 razvijalcev in rok približno treh let. Po besedah ​​Alexa Moora, oblikovalca iger v podjetju Sumo Digital, če bi se cena igre za končnega potrošnika zvišala v enakem razmerju, bi igre v letu 2012 stale 1800 dolarjev, z drugimi besedami, poplačilo povečanih proračunov in ohranjanje enakih cen v trgovinah, založniki morajo prodati veliko več izvodov iger.

Velika proračunska igra za dve platformi - Xbox 360 in PlayStation 3 - je v letu 2012 stala povprečno 20 milijonov dolarjev, za poplačilo pa je bilo potrebno prodati približno dva milijona izvodov.

Vloge

V začetku osemdesetih let prejšnjega stoletja, potem ko so se pojavili prvi domači računalniki in igralne konzole, je en programer lahko upravljal skoraj vse naloge, povezane z razvojem igre. Za razvoj sodobnih iger je potreben širok spekter spretnosti in podpornega osebja. Za delo na enem projektu so potrebne celotne skupine, ki običajno vključujejo predstavnike številnih specializacij.

Kako sami ustvariti igro?

Če želite ustvariti igro, morate poznati programski jezik, zdaj pa so vsi v angleščini in so zapleteni, imajo svojo, tako imenovano skladnjo, ki jo morate tudi poznati. Torej si predstavljate ustvarjanje igre, kajne?

Seveda so skoraj vse visokoproračunske igre narejene z uporabo enega od ključnih jezikov, a za začetnika tudi tega ni treba vedeti.

Obstajajo posebni programi za ustvarjanje iger, eden od njih je Game Maker. Ustvarili so jih posebej za ustvarjanje iger (program se imenuje ustvarjalec iger). Osebno delam v Game Makerju in mi omogoča, da naredim precej kakovostne igre za katero koli platformo, od androida do ios.

Svetujete lahko tudi Unity oz Sestavi 2, kot dobre alternative.

Vsa ta orodja se razvijajo in za Game Maker Studio 2 je pred kratkim izdan drugi del, o katerem sem napisal tukaj: Kaj je novega v Game Maker Studio 2? Pregled GMS 2

Moje osebno mnenje je, da je Game Maker eden najprimernejših programov za ustvarjanje iger posebej za začetnike, obvladovanje Unityja iz nič pa lahko traja veliko več časa.

Če izberete Izdelovalca iger, vam bo moj blog in kanal bistveno pomagal pri njegovem razvoju, če pa se odločite za enotnost ali kaj drugega, je na voljo tudi ogromno brezplačnih kakovostnih izobraževalnih gradiv v ruščini.

Vsekakor je prva (nič :) stopnja izbira programa za ustvarjanje iger.

Prva faza je dokument o oblikovanju

Nato morate izdelati oblikovalski dokument za novo igro. Z drugimi besedami, za igro potrebujete idejo. Kakšna bo igra? Kaj se bo zgodilo tam? Kakšen žanr bo? Koliko časa in denarja bo potreboval razvoj? Takih vprašanj je veliko in pred začetkom ustvarjanja igre je zelo koristno narediti kakšen grob načrt.

Osnovne stvari, kako napisati oblikovalski dokument za igro, najdete tukaj:

  • Kako napisati dizajn papirnate igre

Verjemite mi, da brez predhodnega načrta in zgolj z navdušenjem z veliko verjetnostjo igre ne boste končali.

Glavni in glavni del ustvarjanja igre je pravzaprav njeno ustvarjanje, pisanje kode. Vse je odvisno od okolja in programa, v katerem igrate, vendar pa v Izdelovalcu iger in za začetnike obstaja sistem drog in drog - povleci in spusti.

Podoben sistem ni samo v GM-u, ampak tudi na primer v urejevalniku zemljevidov in oblikovalcih priljubljenih iger. Mimogrede, priporočam, da začnete izdelovati igre z modami za priljubljene igre.

  • Kje začeti razvoj iger

Če želite narediti prvo igro iz nič, vam ni treba poznati programskega jezika, ampak uporabite sistem drog in spust, ki je videti nekako takole:

Izjemna značilnost Game Maker Studio 2 je, da se vsi ti elementi samodejno dešifrirajo v programsko kodo, ki jo vidi razvijalec.

To vam omogoča, da se postopno naučite kodo in prehajate od drog in padca do kodiranja.

Konkretna vprašanja, kot so: kako narediti gibanje, kako posneti, kakšni so učinki in kaj vse o jazzu, najdete na mojem youtube kanalu v obliki posebnih lekcij o osnovah ustvarjanja iger.

Koliko časa traja ustvarjanje igre?

Vprašanje je kompleksno, vse je odvisno od vaših spretnosti, od tega, za kakšno igro gre in drugih dejavnikov.

Včasih lahko izkušena oseba v nekaj tednih naredi preprosto telefonsko igro, včasih srednje kakovostne igre pripravi majhna skupina več ljudi v 6-12 mesecih, vendar veliki projekti naredijo velike studie, razvoj pa lahko traja 1-2 ali več let, medtem ko delajo ekipo 100 ali več ljudi.

Po približnih podatkih ustvarjanje ene večje igre traja približno 2-3 leta za ekipo 200 ljudi, če govorimo o resnih projektih, kot je GTA 5.

Hkrati ne pozabite, da obstajajo izjeme pri pravilih. Notch je prvo različico Minecrafta napisal v enem tednu in ta različica je že imela večino osnovnih struktur. toda na koncu je razvoj trajal več let, čeprav je za razliko od GTA na Minecraft delala zelo majhna ekipa, prihodki Minecraft-a pa so bili zelo resni.

Čeprav je to bolj izjema, ne pravilo. Zdaj je konkurenca veliko večja in takšnih super uspešnih in super poceni projektov se zdi vse manj.

Tretja stopnja - grafika

Grafika običajno poteka vzporedno s postopkom razvijanja in pisanja kode, običajno pa je to posameznik. Zelo težko je združiti delo ne le programerja, ampak tudi oblikovalca, včasih pa je to mogoče tudi sam, poleg tega nekateri projekti ne zahtevajo zelo kakovostne grafike ali pa se vzamejo že pripravljene slike in špriti.

  • Preberi: Kje dobiti sprite za igre?

Grafika in risanje je zelo drag postopek.

Po mojih izkušnjah lahko, če igro naredite sami, lahko traja 40-60% celotnega časa, namenjenega grafiki. V bistvu za indie osamljenega razvijalca lahko dobra grafika podvoji skupni čas, potreben za ustvarjanje igre. In če podvojitev od 1 meseca do 2 ni strašljiva, potem je podvojitev z 2 na 4 leta veliko.

Zato novost razvijalcem zelo priporočamo, da uporabijo vse možne načine za brezplačno grafiko (morda vzamejo umetnika / oblikovalca kot delež) ali da grafično oblikovanje čim bolj omejijo kot prve igre.

V skrajnih primerih lahko grafiko naročite ločeno ob strani in uporabite zunanje izvajanje.

Če pa želite vse narediti sami, obstaja veliko načinov, kako se naučiti risati. Tudi jaz se učim (pred kratkim kupljeno tablični računalnik) za poučevanje risanja pa vam lahko svetujem nekaj dobrih YouTube kanalov:

  • Dobri YouTube kanali o Gamedevu in grafiki

Koliko časa traja študij risanja?

Na splošno se lahko tako kot vsako podjetje učite in se morate učiti vse življenje, vendar popolnost ni meja. Vendar poglejte še enkrat moje risbe.

No, groza ni neposredna, kajne? Seveda slabo, ampak tukaj ne naravnost?

No, to sem risal z računalniško miško v zelo preprostem grafičnem urejevalniku in naučil sem se risati 1-2 meseca, risal sem 1 sliko na teden, največ.

Mislim, da lahko v enem letu dosežete zelo dobro raven, če 1-3 ure na dan namenite risanju in preučevanju teoretične podlage.

Imam video (16 minut):

Izbira projekta

Kje torej začeti? Lažje je odgovoriti, kje začeti, ni vredno, in sicer z velikimi projekti, kot so na primer polni 3D FPS, MMO ali celo dolga igra platforme 16-bitne dobe. Najpogostejša napaka začetnikov razvijalcev je, da začnejo z velikim projektom, ki temelji na Cool Idei, ali pa vzamejo projekt, ki se zdi preprost, končajo pa se na pol dokončani šopi špageti. Na začetku bi morali ustvariti majhne projekte.

V zgodnjih projektih je vaš glavni cilj študirati, ne izvajati Cool Ideas. Z ohranjanjem projekta majhnim se lahko osredotočite na učenje novih tehnik, namesto da porabite tono časa za upravljanje s kodo in ponovnim faktoringom. Kljub dejstvu, da je vaša Cool Idea lahko mrtva, resničnost razvojne industrije je, da večji kot je projekt, večja je verjetnost, da bo prišlo do napake v arhitekturi. In večji kot je projekt, dražja je ta napaka. Se spomnite zgodbe Daedalusa in njegovega sina Icarusa? Daedalus je sinu ustvaril krila iz voska in perja. Ikarja je opozoril, naj ne leti preblizu sonca. Toda Icarus je opozoril, da je opozoril in so se krila stopila, nato pa ga je gravitacija prehitela.

Zato si zapomnite: na novih krilih programerja ne lepite preblizu sonca.

Glede na vse zgoraj navedeno je tukaj nekaj nasvetov, kako začeti.

Grafika in obdelava dogodkov

Če še nikoli niste programirali ničesar, kar je povezano z grafiko ali grafičnim vmesnikom, začnite z nekaj majhnega, da "zmočite noge". Moj prvi projekt je bil tic-tac-toe, tako da sem imel celo skromen začetek. Nekaj ​​idej za prvi projekt:

  • Enoročen simulator bandita

  • Črni džek

  • Tic Tac Toe

  • Štiri po vrsti

Cilj vašega prvega projekta je prehod iz konzole na grafične aplikacije, ki jih vodijo dogodki. Naučil vas bo tudi osnov logike igre in arhitekture. Priporočam nekaj po korakih, saj so gibalne igre povsem drugačna zver.

Poskusite, da bo projekt preprost, da ga lahko dokončate in ne izgubite zanimanja na pol, nikoli ne končajte igre. Igro je pomembno dokončati, ker se ne učite razvojnega procesa, če imate na trdem disku več nedokončanih iger.

Samo eno točko želim opozoriti na tiste, ki bodo naredili tic-tac-toe ali štiri v vrsti. Zdaj ne skrbite veliko za umetno inteligenco. Za začetek je dovolj igra samo za dva igralca ali igranje z računalnikom, ki dela naključne poteze.

Če ste se pred tem ukvarjali z obdelavo grafike in dogodkov in se na tem področju počutite udobno, lahko nadaljujete neposredno na naslednji korak.

Sinhronizacija, gibanje, trki, animacija

Zdaj, ko imate dovolj grafike, je čas, da nekaj naredite v realnem času. Tu je nekaj predlogov:

  • Lov na race

  • Pong

  • Vesoljski napadalci

  • Galaga

  • Tetris

Tu boste spoznali gibanje, čas, animacijo, zaznavanje trkov, cikel igre, izračun točk, zmag in porazov ter druge pomembne osnovne pojme, ki se uporabljajo v vsaki igri.

Duck Hunt in Pong sta dobra projekta za tiste, ki že imajo izkušnje s programiranjem grafike in dogodkov. Imajo preprosto zaznavanje trkov in vse pomembne osnove iger v realnem času.

Space Invaders in Galaga sta dobra izbira za drugi / tretji projekt. Imajo ravni, zato se boste morali naučiti, kako se premikati od ravni do stopnje s pomočjo državnega stroja. O strojih s končnim stanjem lahko preberete tukaj. Igre v slogu "ustreli vse" zahtevajo tudi oblikovanje preprostih vzorcev vedenja sovražnikov, kar je korak k umetni inteligenci.

Tetris je dober za drugi / tretji projekt. Za ustvarjanje puzzle igre ima zelo malo logike. To je igra spodobne velikosti, zato se boste morali naučiti, kako razdeliti svoj program na več izvornih datotek, o katerih si lahko več preberete tukaj. Tetrisa ne podcenjujte. Podcenjeval sem in samo pogledam to grozljivo zmešnjavo v kodi Lazy Blocks.

Preoblikovanje

Značilna napaka novincev je poskušati narediti najboljšo igro vseh časov, ki se konča s ponovnim inženiringom. To pomeni, ko poskuša napisati najboljšo igro / motor in se vse skupaj konča le z manjšim delom napisanega.

Ko sem bil začetnik, sem ponovno preučil AI za tik-tac-toe. Hotel sem narediti igro z nepremagljivim AI. To mi je uspelo doseči s programiranjem računalnika, da sem poznal vse možne pasti. Se sliši kul kajne? Vzelo je skoraj 40.000 tisoč vrstic večinoma kopirane kode in mesec mojega prostega časa.
Kasneje sem se naučil struktur podatkov in izvedel algoritem Minimax, ki z manjšo velikostjo kode ni samo naredil pravilno, ampak tudi naredil boljše.

Tako se učite iz mojih napak in ne bodite preveč ambiciozni. Osredotočite se na učenje izdelovanja iger, ne samo na njih.

Načrtovanje, analiza trkov, fizika, nivoji, umetna inteligenca

Zdaj, ko imate za seboj dve ali tri majhne igre, je čas, da naredite svoj prvi večji projekt.

Do zdaj ste verjetno programirali, kot morate. Na tej točki se bo končalo. V resničnem svetu se večina razvojnih procesov zaključi, preden je napisana prva vrstica kode. Nič ne more biti slabše od spoznanja, da boste morali svoji igri dodati tisto, kar želite, da vržete vso zapisano kodo, ker vsega niste načrtovali vnaprej. Zdaj, ko imate izkušnje z ustvarjanjem iger, veste, iz česa sestoji razvojni proces. Zdaj lahko načrtujete igre, preden jih začnete izdelovati.

Zdaj pa o vaši naslednji tekmi. Break Out in Puzzle Bobble sta dobra za tretji projekt, saj vključujeta napredno prepoznavanje trka in fiziko. Fizika je pomembna, saj daje igri realen občutek. Tudi brata Super Mario imata občutek teže in inercije. Biljard je odličen projekt za tiste, ki želijo obremeniti gyrus s fiziko.

V igrah, kot je biljard, morate trke ne samo zaznati, temveč jih tudi obdelati v določenem vrstnem redu. Ravnanje v trčenju se močno razlikuje od njegovega zaznavanja. Čeprav se ustvarjanje biljarda ali 2D platformerja zdi enostavno, je analiza trkov v pravilnem vrstnem redu zmeden postopek in ga ne gre podcenjevati.

Break out in Puzzle Bobble vključujeta tudi oblikovanje ravni in zahtevata nalaganje in sproščanje svojih virov. Ustvarjanje urejevalnika ravni za igro je dobra izkušnja. Urejevalniki vam omogočajo enostavno ustvarjanje nivojev in jih ne prisilite, da spajkajo v aplikaciji. Imam članek (eng.) O ustvarjanju urejevalnika ravni.

Morda boste želeli tudi vaditi pisanje umetne inteligence (AI). Ena možnost je, da se vrnete v tik-tac-toe ali štiri v vrsti in napišete nepremagljiv AI. Zdaj bi morali že poznati strukture podatkov in imeti možnost uporabe znanja o drevesih za uporabo algoritma Minimax. S tem algoritmom lahko izračunate vse možne rezultate tic-tac-toe in ustvarite nepremagljiv AI. Smešno je vznemirjati svoje prijatelje. Morda boste želeli opraviti tudi različne stopnje zahtevnosti. Igra ne prinaša veselja, če je ni mogoče osvojiti.

Pac Man je odličen način za vadbo pisanja AI. Morali boste poznati strukture dreves / grafov in algoritme iskanja, na primer A *, da bodo duhovi lahko šli skozi labirint. Potrebno bo tudi, da bodo duhovi delovali v ekipi. Vse to je koristno, če igrate igre s kompleksnim AI, kot so strategije v realnem času. O osnovah AI si lahko preberete tukaj.

Platformerji, Action / Adventure, RPG, RTS, motorji

Zdaj, ko ste pridobili izkušnjo ustvarjanja dobro načrtovane igre, ste pripravljeni na to, da ustvarite Action / Adventure / Platform. To bo vrhunec grafike, gibanja, animacije, analize / odkrivanja trkov, fizike, AI, arhitekture programske opreme in vsega drugega, kar se boste na tej točki naučili. Za bolj ambiciozne lahko predlagate izdelavo strategije v realnem času (RTS) ali igranja vlog (RPG). Bodite previdni, saj sta RPG in RTS res ogromna projekta.

RPG-ji imajo zapleteno arhitekturo in zahtevajo veliko načrtovanja. Načrtovati boste morali vsako orožje, oklep, dodatno opremo, napad, predmet, urok, poziv, sovražnika, kartico, šefa, ječo itd. do najmanjših podrobnosti. Vse to bi moralo delovati skladno, milo rečeno, to ni lahka naloga. Če bo vaš oblikovalski projekt videti kot scenarij ali strip, boste morali narediti več veliko delati.

RTS so tudi arhitekturno zapleteni in zahtevajo tudi veliko AI. Morali boste iskati pot za enote, sprejemati ukaze po njih, različna vedenja, odvisno od prejetih ukazov. Če še niste storili AI, bi bilo najbolje začeti s klonom Pac Man.

Verjetno boste morali prvič izdelati motor za svojo igro. Izogibati se je treba ustvarjanju univerzalnega motorja. Создавая движок не пытайтесь сделать его подходящем для любой игры. Если ваша игра требует x, y и z, делайте движок который умеет x, y и z. Движки создают исходя из того что нужно для конкретной игры, а не из того что любой игре может потенциально понадобится.

Другая распространенная среди новичков ошибка — это попытка создать движок в качестве первого проекта. И обычно это универсальный движок. Вам не нужен движок с фантастической графикой для создания Pong'а или Space Invaders. Программируя, легко закопаться в деталях. Концентрируйтесь на общей картине и завершайте свои игры.

Zdi se, da vsi želijo narediti naslednji veliki MMO. Ustvarjanje spletnih iger ni nekaj, kar lahko hitro razumete. To sem spoznal, ko sem poskušal spletno pokeriti takoj po zaključku tic-tac-noga.

Dodajanje omrežja močno oteži igro. Ko en igralec nekaj naredi, morate podatke o tem poslati vsem ostalim. Kot da desnica ne bi vedela, kaj počne levica. Izbrati boste morali tudi med nalaganjem strežnika in tem, kar lahko nadzoruje. Bolj kot dela strežniški del, manj je priložnosti za goljufijo stranke, vendar to pomeni tudi večjo obremenitev strežnika. Za akcijske in druge igre z velikim tempom boste morali skrbeti zaradi zakasnitve omrežja in izgube paketov.

Preden poskusite narediti mrežno igro, morate popolnoma dokončati vsaj eno dobro načrtovano igro. Kot prvi mrežni projekt poskusite narediti nekaj, kar ni nujno za hitrost. Na primer, preprost strežnik / odjemalec za klepete bi bila dobra praksa. Lahko se vrnete tudi na tic-tac-toe / štiri zapored in jim dodate možnost, da na njih igrate na spletu. Lahko pa poskusite izdelati mrežno kartico ali družabno igro.

Ko je vaš prvi mrežni projekt pripravljen, poskusite nekaj narediti v realnem času. Verjetno ste v svoji prvi omrežni aplikaciji uporabili TCP in se prepričali, da prejeti podatki pridejo v vrstnem redu, v katerem ste jih poslali. Za igre, v katerih je veliko akcije, bodo zamude, ki jih ustvari TCP, prevelike, zato boste morali uporabiti UDP. UDP ne jamči za naročilo, kot tudi samo dostavo na splošno. Ker UDP ne opravi dodatnih preverjanj integritete, je hitrejši. Žrtvovati boste morali preprosto uporabo TCP v zameno za hitrost UDP in potrebo po neodvisnem preverjanju celovitosti podatkov pri ustvarjanju igre.

Preden naredite 3D igre, morate narediti vsaj eno dobro načrtovano igro in dobro razumeti tridimenzionalno vektorsko matematiko, linearno in newtonsko fiziko. Tukaj se morate spoprijeti z vertikali, teksturami, osvetlitvijo, sencami, določanjem interakcije s predmeti v tridimenzionalnem prostoru, nalaganjem modelov in drugimi težko zvenečimi stvarmi.

Dobra novica je, da če ste že naredili 4 ali 5 iger, že poznate osnove, potrebne za ustvarjanje igre. Že poznate razvojni proces in poznate svoje sposobnosti programerja. Ne glede na tridimenzionalnega strelca ali dvodimenzionalnega, je še vedno strelec. 2D RPG ali 3D RPG je še vedno RPG.

Ne mislite, da je to izgovor, da preskočite 2D in pojdite naravnost v 3D. Preden se naučite teči, se morate naučiti hoditi.

Oglejte si video: Основы создания игр - диалоги ч1 в Game Maker Studio by Econ Dude (April 2020).

Pin
Send
Share
Send
Send