sestdiena, 2013. gada 31. augusts

Ludum Dare - Jāņa Bicīši

Ludum Dare ir kaut kas supervienkāršs, bet manuprāt nenormāli kruts.
Tās ir sacensības ik pēc ~3 mēnešiem, kurās tev ir 48h laikā jāizveido spēle, pie dotās tēmas. Ar jāizveido domāts viss - gan kods, gan zīmēšana, skaņa u.t.t. u.t.j.p. Vienmēr uz šo esmu skatījies ar lielu interesi, un nelielu cerību, ka kaut kad arī es būšu spējīgs iekļauties tik mazā laika logā un izveidot kaut ko, ko pašam būtu interese iesniegt.
Šomēnes kā nu gadījies kā ne, izrādījās, ka es brīvdienās nekur nebraucu dzert un aptuveni 10h pirms deadline izlēmu, ka es gribu un es VARU paspēt uztaisīt kaut ko nelielu un ķēros pie lietas.
Tā rezultātā man ir dzimusi 10sekunžu treniņa simulācija kopā ar Jāni Bičkovski un viņa neizmērojami lielajiem bicīšiem.
Apskatīt vari ŠEIT, iesako ņemt Web versiju.
Galvenās atziņas ir tādas, ka es neesmu pilnīgs idiots, un, ja nepieciešams, kaut ko normālu varu salitk kopā arī tik īsā laika posmā. Uz nākamo reizi domājams es varētu laicīgi sapirkties alu, čipšus un enerģijas dzērienus un mēģināt pieķerties kaut kam lielākam visā 48h periodā.
Šis, lai arī kaut kas supervienkāršs, man tomēr ir pārsteigums arī pašam, jo 10h nav obligāti daudz, ņemot vērā, ka otrajās 5h mēs ar Laimu jau bijām atvēruši balzāma un Mokas pudeli, un nodarbojāmies ar dzejošanu - zīmēšanu.
Kopumā lielākais laika patēriņš man vēl joprojām iziet uz mākslu - kodēšana konkrēti šim paņēma max3h, un pārējais laiks pikselējot, eksportējot u.t.t.
2 jauni atklājumi - Unity ļauj lietot .psd failus. Kāpēc tas ir kruti? Es, ja gribu kaut ko mainīt, varu to vēljoprojām mierīgi darīt ar PhotoShop un nepazaudēju layerus u.t.t., kas ja godīgi, ir galīgi galīgi kruti. Atklājums numur 2 ir .png failu darbība. Es vienmēr domāju, ka man vienkārši ir zīmējums un aizmugure ir caurspīdīga un tas arī viss. Izrādās tā nav, apakšā ir alpha kanāls, kas norāda, kuras vietas ir caurspīdīgas, un reāli varam izdarīt arī tā, ka man ir bilde ar rudzu lauku, bet alpha kanālā iezīmēju krānu, kuru tad redzēsim arī gala .png. Šo man nācās saprast, jo sākumā visiem zīmējumiem rādījās kautkādas debīlas gaišākas maliņas, kuru izcelsme man nebija saprotama. Izrādās-  ja es uzzīmēju, piemēram, kāmi, viņš automātiski pieņem, ka viss ap kāmi ir nevis caurspīdīgs, bet gan balts, un pēctam eksportējot bildi normalizē malējos pikseļus kaut kur pa vidu starp kāmja krāsu un balto krāsu, kas, manuprāt, ir pilnīgi debīli, bet nu varbūt tam ir iemesls. Šo labot var vienkārši nedaudz "zīmējot pāri malām" vai vēl vieglāk - izmantojot PS scriptus, kas to no gatavas bildes izdara tavā vietā. Kaut kā tā.
Šī ir 2. mana pilnībā pabeigtā DONE AND DONE spēle manā mūžā, par kuru man nav kauns, un es par to jūtos ļoti labi.

piektdiena, 2013. gada 19. jūlijs

Runner [prototype]

Turpmāk sekojošais ir radīts kaut kad sen, bet es domāju šis prototips ir bijis gana nozīmīgs manā attīstībā, un neredzu iemeslu, kāpēc nelikt viņu šeit.
Kaut kādā brīdī daudz pļāpājām ar kādu manu paziņu, kuru drošības pēc sauksim par Diwie, kurš arī izrādīja interesi par spēļu taisīšanu un zīmē faking smuki, tāpēc domāju ka kaut ko vienkāršu varam sabīdīt.
Ar vienkāršu es domāju - kaut ko, ko mēs varētu arī izdarīt līdz galam.
Man paliela problēma ir tā, ka es kaut ko iesāku sajūsmas pilns, taču brīdī, kad vairs neredzu jēgu turpināt (neredzu galu + nejūtu nekādu papildus devumu savai attīstībai) es vienkārši aizmirstu par to projektu un sāku darīt kaut ko citu, piemēram rīt pīrāgus. Ar šo, protams, ir tieši tāpat, bet kaut kādā brīdī man galvā vēl bija ilūzija, ka novedīsim līdz galam.
Unity ir ārkārtīgi draudzīgs engine, bet pamatā domāts 3D videi, un uz tā taisīt 2D spēles ir aptuveni tas pats, kas dakšas vietā izmantot 500Ls vērtu urbi, lai uzkostu desu. Tas gan nenozīmē, ka tas nav izdarāms, un ka no tā nevar būt nekāds labums.
Ļoti ilgs laiks man pagāja, lai saprastu kā vispār pie velna strādāt ar 2D objektiem, un, kas svarīgāk, kā panākt to, lai viņi izskatās tā, kā es gribu. Pamatā viss ir salīdzinoši vienkārši: es uztaisīju spritesheetu un tad no skripta izvēlējos cik kadrus sekundē rādīt, un norādīju konkrētu daļu sava spritesheeta, kuru konkrētajā brīdī izmantot.
Kā redzēsi, tas gan vēl nav viss, jo konkrētajā brīdī viss diezgan ļoti izskatās pēc sūda. Kāpēc tā? Tāpēc, ka attēlu renderēšana ir kaut kas, ko es vēl līdz galam neesmu sapratis, un acīmredzami superkvalitatīvās bildes, ko izmantoju sākumā, izrenderējot nu ir kļuvušas par 5 klasnieka/parkinsona slimnieka zīmējumiem. Bet tas ir OK, jo kaut ko tuvu tā salabošanai es iemācījos nedaudz vēlāk.
Diemžēl Diwie šis baigi neinteresēja, un mēs pilnīgi aizmirsām, ka kaut ko šādu darījām, un tā nu tā spēle stāv uz mana cietā diska līdz pat šodienai, kad es izdomāju notraust no viņas putekļu kārtu.
Galvenās atziņas pašam:
2D spēles ar Unity taisīt var, un ir zināmi plusi. Piemēram aizmugurē slīdošās ainas, kas kustās perspektīvā ir ārkārtīgi viegli panākamas bez īpašas rēķināšanas, vienkārši noliekot tās tālāk uz z ass. Šo trešo dimensiju var izmantot arī citām lietām, ko, manuprāt ļoti smuki ir izdarījuši cilvēki, kas taisījuši šo.
Zemāk pati spēle.
Ideja ir ļoti vienkārša, ko paņēmu no Marvin Spectrum, kas ir spēle, ko kādreiz ļoti aktīvi spēlējām informātikas stundu laikā, tā vietā, lai mācītos par to, kā wordā izveidot atraitņteikumu, kas ir lieta, ko nemāku vēl šobaltdien, un neesmu īsti pārliecināts, vai man tiešām vajadzētu zināt kā to izdarīt.


Kontroles: ASD, lai mainītu augstumu, JKL, lai mainītu krāsu. Spēles mehānika ļoti vienkārša: trāpi caurumā, esot pareizajā krāsā.
Skati ŠEIT

svētdiena, 2013. gada 14. jūlijs

Mana mazā civilizācija

Conway's Game of Life es uzprogrammēju salīdzinoši nesen, bet es uzskatu, ka tā ir otrā lieta, ko man vispār jebkad vajadzēja taisīt. Kāpēc? Tas ir kaut kas salīdzinoši vienkāršs, kas tajā pat laikā galā ir kaut kas interesants un papildus tam ļoti labi iemāca saprast kāpēc un kā darboties ar arrayiem, kas man ilgu laiku bija mistērija.
Šī skaitās "zero player game" un ideja ir šāda - tu iesāc atzīmējot baltajā laukumā pāris dzīvas šūnas. Tās ir tādas normālas šūnas, kas dzīvo, vemj citoplazmu un iet tusēt uz "membrānas only" klubu. Tālāk ar taustiņu "Space" tu vari skatīties, kā tava mazā šūnu civilizācija attīstās vai vienkārši nomirst.
Likumi šai dzīvei ir ļoti vienkārši:


  1. Katra šūna, kurai ir mazāk, kā 2 kaimiņi mirst, jo ir reāli garlaicīgi.
  2. Katra šūna ar 2 vai 3 kaimiņiem dzīvo tālāk, jo nu, palielam viss ir normāli.
  3. Katra šūna ar vairāk kā 3 kaimiņiem mirst, jo ir besīgi dzīvot kopā ar tik daudz kaimiņiem.
  4. Katrā tukšajā vietā ar tieši 3 kaimiņiem rodas jauna šūna, jo notiek reprodukcija. Es personīgi nezinu kāpēc viņas vairojas tikai trijatā, bet man pret to īpašu iebildumu nav.

Šis neprasīja daudz laiku, un pabeidzot es biju diezgan lielā sajūsmā sēžot un meklējot variantus, kas pēc tam izvēršas par civilizācijām, kas virzās uz āru konkrētās sistēmās.
Vēl viena lieta, ko esmu sapratis, kas man ir nepieciešama - ir debīli, ja viss izskatās pēc sūda. Kaut kā baigi grauj motivāciju strādāt tālāk. Tad nu šeit es nedaudz pierakstīju klāt random krāsu piešķiršanu zem zaļajiem toņiem. Rezultātā izskatās daudz smukāk un man ir smaidīgāka dzīve. Šo centīšos darīt turpmāk visam, ko taisu, jo vairākus mini-projektiņus esmu pametis pusratā tiaki tāpēc, ka man piegriezās uz viņiem skatīties.

Tad nu lūk:
Instrukcijas - ar peli izvēlies sākuma šūnas baltajā klucī zemāk, ar "Space" turpini nākamās paaudzes un ar "Esc" dabū tīru laukumu, uz kura sākt no jauna.

Skati ŠEIT


Intro

Šis ir Intro un tāpēc es saku laipni lūdzam Valtera Brūna iespējams garlaicīgajā dzīves pusē, jo šeit es nerakstu par šņabi un krūtīm, bet gan par manu vaļasprieku - ķimerēšanos ap programmēšanu, spēļu taisīšanu u.t.t.
Galvenokārt šīs vietas mērķis ir man pašam priekš sevis apkopot lietas, kuras esmu uzķimerējis un šādas tādas pārdomas par to, kas man tajā patīk, besī, unko es nemāku un vajadzētu mācēt. Ja gadījumā Tev šis liekas interesanti vai pilnīgi debīli, man par to ir ļoti liels prieks, droši vari mani mīlēt un ienīst un izteikt komentārus par lietām, kuras es daru.

Es domāju, ka pirmā tehniskā lieta ar ko es gribētu sākt ir šī: es pamatā darbojos ar Unity3d. Kāpēc? Tas ir engine, kas man liekas tik ļoti nenormāli draudzīgs, ka man nedaudz gribas apskauties, tajā pat laikā pagaidām ļaujot man uzprogrammēt pilnīgi jebko, kas man ienāk prātā. Es pieņemu (es ceru), ka ar laiku tā vairs nebūs taisnība, un savām izpausmēm man vajadzēs būvēt pašam savu engine, bet pagaidām viss ir smuki. Es programmēju C#, jo tā pašlaik ir visērtākā un smukākā valoda ar ko man nācies sastapties, ja neskaita Ruby, kuru Unity gan diemžēl neatbalsta.
Manas programmēšanas zināšanas gan ir ļoti viduvējas, jo visu esmu apguvis pašmācības ceļā īsti nekad nesaprotot pie kā ķerties klāt. 50:50 esmu iemācījies brīvajā laikā un darbā, kur macro programmēšana Excelim ir kaut kas, kas mūsu darbu atvieglo reizes 8. Šogad gan es sākšu mācīties Datorzinātnes LU, kas, cerams, dos zināmu uzrāvienu šim pasākumam.

Kāpēc es to daru? Man reāli faking patīk spēles. Spēles ir lieliskas un, ja es kādreiz ar to varētu pelnīt naudu, tas būtu vienkārši brīnišķīgi. Tas, kas gan man reāli interese ir tieši "Game design", bet tā kā maz būtu tik stulbu cilvēku, kas gribētu strādāt pie manu ideju realizēšanas, es sapratu, ka vismaz programmēt man ir jāiemācās pašam un varbūt varbūt kādreiz būs kāds, kas ar mani gribēs darboties kā mākslinieks. Tieši tāpēc lūdzu saprotiet, ka viss, kas šeit ir neglīts, ir neglīts tāpēc, ka mākslinieks es esmu tikai sirdī.

Un tad arī pirmā pārdomu lieta - zini cik fakin grūti ir dabūt bloggerī iekšā manas spēles? Īstenībā nenormāli viegli, vienkārši es esmu idiots pilnīgākais. Esmu pavadījis savas stundas 3, un beidzot nonācis pie secinājuma - dropboxā tev ir public folderis un savi folderi. Ja tu savu folderi padari par public, tas neko nenozīmē - embedošanai tik un tā viss jāliek Public. Kāpēc? Es nezinu, man nav ne jausmas, bet es esmu priecīgs, ka tagad viss strādā.