Pamācības

Mācības, ar kūrām jārēķinās

Elviss Strazdiņš, 15.12.2008

Cilvēki bieži uzskata, ka izveidot pašam savu GTA vai World of Warcaft ir viena no vienkāršākajām lietām uzreiz aiz trauku mazgāšanas. Tāpēc mēģināju apkopot vairāku indie programmētāju pieredzi no gamedev.net un citiem portāliem, un nedaudz papildināt tos ar savu pieredzi, ko tad īsti nozīmē veidot spēli.

Izplāno

Plānot vajag visu! Un spēļu izstrāde nav nozare, kurā kaut kas notiek spontāni. Pirms tiešām sākt veidot spēli, ir jāizplāno, kā tieši strādās spēle. Izplāno, spēles noteikumus, kā tiks veidota spēles pasaule, kā personāži savā starpā komunicēs!

Nākošais solis - izplāno tehnisko daļu! Izplāno tieši kādus bezmaksas rīkus izmantosi, kādā vidē veidosi spēli, kā veidosi spēli! Padomā par to, kā spēles daļas komunicēs savā starpā, kā tiks zīmēti speles objekti, kā tiks zīmēta lietotāja saskarne!

Mans ieteikums būtu uz lapas shematiski sazīmēt Tavas spēles struktūru. Savelc bultiņas starp daļām, kas komunicē savā starpā. Strādājot pie lieliem projektiem, talkā var ņemt datoru un tādus rīkus, kā UML, bet mazajām spēlītēm man vispiemērotākā liekas tinte.

Neplāno pārāk ilgi

Lai cik ilgi es plānotu, man nekad nav sanācis izveidot ideālu sistēmu. Tāpēc es to nemaz necenšos darīt. Neiesaku pie plānošanas sēdēt ilgāk par pāris dienām, jo viss, kas ir padarīts tā pat būs jāmaina vai jāuzlabo. Ilga plānošana var nobeigt projektu, var zust viss entuziasms. Nebaidies pieņemt pilnīgi nereālus variantus. Citreiz tieši šāviens tumsā var izrādīties tas, par ko Tu visu laiku esi sapņojis. Ja tomēr Tev nāksies visu pārrakstīt, Tu tik un tā būsi no tā mācījies.

Nebaidies dzēst un pārveidot

Cilvēki bieži stingri pieķeras savam kodam un negrib no tā atteikties vai pilnībā to pārrakstīt. Protams, rakstīt kodu ir laikietilpīgs darbs un ir žēl šo laiku vienkārši izmest. Bet problēma ir tā, ka pieķeroties pie viena koda, Tu sev liedz iespēju augt. Pievienojot draņķīgam kodam draņķīgu kodu, kuram jāraksta draņķīgs kods, kas šo draņķīgo kodu atbalsta, kopā sanāk viens liels draņķis, tādēļ pārņem laba sajūta, kad viss tiek sākts no jauna ar fresh clean kodu. Jā, arī lielas kompanijas tērē milzīgu naudu, lai pārrakstītu savus spēļu dziņus, ja tie sāk palikt pārāk nelietojami un prasa daudz lielākus līdzekļus, lai tos uzturētu.

Tādēļ, ja kāda no spēles daļām ir kaut cik laba, bet Tevi tā neapmierina, tad pārraksti to, ja Tev prātā ienāk, kas labāks un apmierini savu labsajūtu.

Pats esmu izmēģinājis abus variantus, gan kodēt draņķīgu kodu, gan pārrakstīt visu no nulles. Otrais variants man ir aizņēmis vismaz 2 rezies lielāku laika, kā pirmais, bet vēlāk, kodam attīstoties, to tomēr ir vieglāk papildināt vai koriģēt, vai vēl labāk - izmantot citiem projektiem.

Veido un izmanto rīkus

Programmētāji ir slinki. Programmētaji negrib kodēt lieku kodu. Kāpēc veidot programmu objektu izvietošanai spēlē, ja Tu vari kartes failā salikt koordinātas ar roku. Rakstot programmas, kas paradzētas noteiktām darbībam vēlāk Tev palīdzēs ietapuīt daudz laika, un ļaus Tev ātrāk veidot speles saturu. Šādu programmu piemēri būtu: lietotāja saskarnes redaktors (pogu novietojums utt.), līmeņu redaktors, objektu tekstūru koordinātu redaktors, NPC (non-player character) darbību/sarunu redaktors utt. utt.

Izmanto koda versiju kontroli

Pat ja Tu esi vienīgais programmetajs, vai tiešām Tev nekad nav nācies aprauties, kad saproti, ka pēc lielas koda dzēšanas, Tu saproti, ka nekas vairs nestrādā? Vai arī Tu nespēj atcerēties, tieši kādas izmaiņas Tu veici. Vai arī gribi atpakaļ to kodu, ko rakstīji pirms mēneša. Tu noteikti esi piedzīvojis kādu no šīm situācijām, un ideāls glābiņš ir koda versiju kontrole, piemēram, SVN (TortoiseSVN klients), kas Tev galvenokārt kalpos kā koda rezerves kopiju veidotājs. Laba ideja ir turēt šo SVN uz cita datora, lai gadījumā, ja Tev nobrūk dators, Tu varētu iegūt atpakaļ savu surā darbā rakstīto kodu.

Nerādi spēli citiem par ātru

Kāpēc tā ir slikta ideja? Domāju katrs reiz ir nogrekojis un savu nepabeigto, nespēlējamo krāmu ir rādījuši nedaudz plašākai publikai par savu ģimeni. Un ko iegūst rezultātā? Uzslavas? Nē, labākajā gadījumā teikumu: "nedaudz pastrādāsi un varbut būs spēlējams." Pēc ne pārāk labas kritikas entuziasmam piemīt tendence kristies. Bieži vien, šādi projekti parasti pazūd un par tiem tā arī nekas vairāk netiek dzirdēts. Gamedev.lv spēļu sadaļā ir daudz šādu piemēru.

Kopsavilkums

Kopumā gandrīz visi punkti ir ņemti no citu spēļu izstrādātāju viedokļiem, taču pašus punktus es paskaidroju tā, kā es uzskatu, nevis, kā uzskata šie izstradātaji, tādēļ kārtējo reizi, iespējams, manas domas ar Jūsējām nesakritīs. Šados gadījumos droši izmantojiet komentēšanas iespēju.

Līdzīgi raksti:

Autorizācija

Lietotājs

Parole


Reģistrēties Aizmirsu paroli