Digitālais klaidonis

Mēs dzīvojam, kamēr lidojam

Maģistra darbs — 1. daļa

Beidzot tas ir noticis! Es sāku taisīt maģistra ("diploma") darbu divus mēnešus pirms nodošanas termiņa. Tas cita starpā būs spēle, bet kāda — pagaidām neteikšu (tiesa, daudzi to jau tāpat zina). Parasti divi mēneši ir vesela mūžība, taču, rakstot 3D spēli ar fiziku, loģiku, AI, tīkla atbalstu un citiem priekiem, šāds termiņš ir acīmredzami nereāls. Ko darīšu — nezinu. Turklāt man vēl būs jānokārto viens priekšmets — eksāmens, kursa darbs un laboratorijas darbs.  Un, lai gan aptuvens spēles 2D prototips bez visiem iepriekšminētajiem labumiem jau ir gatavs, diez vai tas īpaši palīdzēs.
Tomēr es šeit pakāpeniski rādīšu sava darba rezultātus. Šodien es guvu grandiozus panākumus — uztaisīju rotējošu trīsdimensiju kubiņu. Diemžēl apgaismojuma pagaidām nav, jo tam ir vajadzīgas virsmu normāles (perpendikuli), grāmatā gatavu nav, bet pašam tās aprēķināt un pierakstīt viena kubiņa dēļ ir slinkums.


Kubiņš

Ļaunas mēles teiks, ka nekāds lielais sasniegums tas nav, īpaši ņemot vērā, ka es to taisīju pēc grāmatas un rakstiem. Tomēr lūdzu ņemt vērā, ka tas ir uztaisīts C# valodā un izmantota pavisam svaigā februāra Managed DirectX for .NET Framework 2.0 beta versija. Dokumentācija ir fragmentāra, piemēru gandrīz nav, nekādu rakstu un grāmatu arī nav (visi ir novecojuši), turklāt API, proti, funkciju kopums, ar kuru programmētājs strādā, izmantojot svešas bibliotēkas, visu laiku mainās.  Par laimi, koncepcijas šoreiz nav būtiski mainījušās. Tikai tādi sīkumi kā funkciju nosaukumi.
Tāpēc ir visas iespējas pāris nedēļu laikā iemācīties rakstīt vienkāršas 3D lietotnes, un vairāk man pagaidām arī nevajag. Agrāk 3D spēļu rakstīšana bija diezgan sarežģīts process, kas prasīja augstu programmētāja kvalifikāciju. Nelaimīgie bērni, kuri mācījās programmēt un mēģināja uzreiz ķerties pie spēlēm, nevarēja ne uz ko cerēt. Tagad ar Managed DirectX viss ir daudz vieglāk, un pat es, nebūdams īpaši labs programmētājs, ceru, ka spēle izdosies.
P.S. Kubiņš, starp citu, tika ierakstīts no ekrāna ar programmu HyperCam un pārveidots GIF formātā ar programmu "123  AVI to GIF Converter".