<?xml version="1.0" encoding="UTF-8" ?><?xml-stylesheet type="text/xsl" href="rss.xsl" media="screen" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
	<atom:link href="http://www.gamedev.lv/articles/feed.rss" rel="self" type="application/rss+xml" />
	<title>gamedev.lv rss</title>
	<link>http://gamedev.lv</link>
	<language>lv</language>
	<description>gamedev.lv</description>
	<generator>PHP</generator>
	<docs>http://feedvalidator.org/docs/rss2.html</docs>
	<lastBuildDate>Fri, 10 Sep 2010 07:05:26 +0300</lastBuildDate>

<item>
	<title>Sacensības uzņem apgriezienus</title>
	<description>Līdz ar skolas gaitu sākšanos ir beidzies konkursa BRSD pirmais posms - spēļu reģistrācija un sākas aktīva spēļu izstrāde.



	
	  


Pavisam konkursā tika reģistrēti 18 projekti, kuru vidū ir projekti, kas startējuši gan BRSD (Boldman 2, Fire and Ice), gan Indago - "Project Aurora". Bez konkursā startējušajiem projektiem, dalībnieku sarakstā ir arī pirms konkursa iesākti projekti, piemēram, "Riču Raču Ultimāts" un "Karstā nauda".



	
	  


Kopumā dalībnieku saraksts ir ļoti krāsains - sākot ar iesācējiem un beidzot ar programmētājiem, kas jau ir izstrādājuši savus projektus. Redzēsim, kas no tā visa sanāks.



Nākamais konkursa atskaites punkts ir 15. novembris, kad beidzas galvenais spēles izstrādes posms, un sākas spēļu testēšanas posms.
Novēlu veiksmi visiem dalībniekiem un sev - veiksmi atrast jaunus sponsorus, lai balvas būtu pēc iespējas lielākas!</description>
	<guid>http://www.gamedev.lv/article/sacensibas_uznem_apgriezienus</guid>
	<link>http://www.gamedev.lv/article/sacensibas_uznem_apgriezienus</link>
	<comments>http://www.gamedev.lv/comments/index/215</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Latvijā</category>
	<pubDate>Sat, 04 Sep 2010 14:39:00 +0300</pubDate>
</item>
<item>
	<title>Atliktā renderēšana</title>
	<description>



	
	     


Motivācija
Mūsdienās, lai turētu līdzi jau tā augsti paceltajai grafisko izvirtību latiņai ir jāveido dažādas tehnikas, kas varētu ietaupīt datora resursus. Gaisma un ēnas parasti ir pats prasīgākais efekts (ja to tā varētu saukt), un atliktā renderēšana (deferred rendering) ir viens no veidiem, kā taupīt video kartes resursus.
Kādu laiku atpakaļ radās doma apkopot atliktās renderēšanas principu vienā īsā rakstā. Tā nu tapa šis raksts, bet laika trūkuma dēļ tā arī nesanāca viņu nopublicēt. Beidzot notraucu putekļus no šī raksta un publicēju to šeit.
Atliktās renderēšanas pamatideja
3D objektu attēlošanai mūsdienās parasti izmanto trīsstūrus. Katram trīsstūrim var būt krāsa, faktūra, caurspīdīgums, gaismas atstarošanās īpašības un dažādi efekti. 3D objektu un gaismas avotu kopumu parasti sauc arī par scēnu. Visbiežāk scēna tiek renderēta ņemot katru objektu un to renderējot apgaismotu ar katru gaismas avotu, kas ir scēnā t.i. katrs objekts tiek renderēts tik reizes, cik gaismas avotu ir scēnā.
Lai samazinātu šo darbību skaitu, tiek izmantoti dažādi algoritmi, viens no tiem ir atliktā renderēšana. Atliktā renderēšana izmanto nedaudz citādāku piegājienu scēnas renderēšanai, sākumā visu objektu ar gaismu saistītās īpašības tiek norenderētas buferī, kas tiek saukts par G buferi . Tās ir krāsa, vienības vektori, dziļumi un cita informācija, kas varētu ietekmēt objekta fināla izskatu. Kad informācija ir saglabāta buferī, tiek renderētas katra gaisma atsevišķi kā ģeometrija. Līdz ar šīs renderēšanas metodes izmantošanu ObjektuSkaits * GaismuSkaits renderēšanu skaita vietā tiek iegūts ObjektuSkaits + GaismuSkaits.
Tehnika
Visvienkāršākajā piemērā G buferim tiek izmantotas 2 faktūras. Tā kā katras faktūras pikselis var sevī glabāt 4 kanālus, sarkanajai, zilajai, zaļajai (RGB) un alfa (A) krāsai, tad izmantojot 2 buferus, katrs pikselis sevī var glabāt 8 kanālus informācijai. Pirmās faktūras RGB kanāli sevī glabās objekta krāsu, bet A kanāls atspīdēšanas intensitāti, otrās faktūras RGB kanāli glabās skata telpas vienības vektoru, bet A - dziļumu.
Sākumā G buferī tiek renderēti visi objekti, kurus ietekmēs apgaismojums. Šeit arī parādās viens no šīs tehnikas trūkumiem - tas nedarbojas ar caurspīdīgiem objektiem, līdz ar to caurspīdīgus objektus ir jārenderē pašās beigās (gaisma tos neietekmēs).
Kad G buferis ir izveidots, tad tam pa virsu tiek renderētas visas gaismas un scēnas renderēšana ir pabeigta.
Papildinājumi
Lai papildinātu scēnu ar ēnām, kas krīt no objektiem, ir jāizveido atsevišķs ēnu buferis, kurā pēc kārtas visas gaismas ierenderē sevis veidotās ēnas.
Otra lieta, kas iespējams būs vajadzīga ir caurspīdīgo vai dažādu citu objektu, kam nav vajadzīgs apgaismojums, renderēšana pēc atliktās renderēšanas tehnikas. Šādā gadījumā der izveidot atsevišķā buferi, kurā pieglabāt katra pikseļa dziļumu, lai pēc tam var testēt, vai klāt nākošie objekti ir redzami.
Kopsavilkums
Lai arī šis algoritms ietaupa daudz laika uz renderēšanas rēķina, tomēr tam ir vairāki trūkumi, piemēram, nespēja strādā ar caurspīdīgiem objektiem. Algoritms arī nav tik saprotams un loģisks, kā klasiskā renderēšana, taču tam ir tieši tik pat daudz plusu, cik mīnusu. Sīkāk ar tiem var iepazīties dažādos interneta resursos.</description>
	<guid>http://www.gamedev.lv/article/atlikta_renderesana</guid>
	<link>http://www.gamedev.lv/article/atlikta_renderesana</link>
	<comments>http://www.gamedev.lv/comments/index/201</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Pamācības</category>
	<pubDate>Sat, 07 Aug 2010 16:46:00 +0300</pubDate>
</item>
<item>
	<title>Pieteikšanās konkursam BRSD 2 sākusies</title>
	<description>Ir pienācis laiks kārtējam "Beidz runāt, sāc darīt" konkursam. Iepriekšējo reizi tas notika 2008. gadā, un izskatās, ka tā kļūst kā tradīcija, ka BRSD tāpat kā Indago noteik reizi divos gados.
Konkurss kopumā tiek iedalīts vairākos posmos - konkursa dalībniekiem no 19. jūlija līdz 31. augustam ir jāveic&#160; reģistrācija un pieteikšanās, savukārt spēļu izstrāde notiek līdz 31. oktobrim. Nākošajā posmā, no 1.-15. novembrim tiks veikta iesniegto datorspēļu testēšana, kurā varēs piedalīties ikviens portāla gamedev.lv apmeklētājs, ar mērķi palīdzēt konkursa dalībniekiem uzzināt spēlētāju viedokli par viņu izstrādātajām datorspēlēm un, iespējami, pieļautajām kļūdām, kā arī veikt nepieciešamos labojumus.
Konkursa uzvarētājs tiks noteikts no 16.novembra – 1. decembrim, kad ikviens portāla apmeklētājs varēs novērtēt iesniegtās datorspēles 5 zvaigžņu sistēmā.
Fināls un uzvarētāju apbalvošana notiks 3.decembrī.. Pagaidām gan vēl tiek meklēti un piesaistīti sponsori, tāpēc balvu fonds vēl netiek paziņots.
Visiem interesentiem iesaku apmeklēt konkursa sadaļu, un, ja ir vēlme, reģistrēties. Vēlu veiksmi visiem dalībniekiem!</description>
	<guid>http://www.gamedev.lv/article/pieteiksanas_konkursam_brsd_2_sakusies</guid>
	<link>http://www.gamedev.lv/article/pieteiksanas_konkursam_brsd_2_sakusies</link>
	<comments>http://www.gamedev.lv/comments/index/189</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Latvijā</category>
	<pubDate>Tue, 20 Jul 2010 01:24:00 +0300</pubDate>
</item>
<item>
	<title>Draugiem.lv spēļu izstrādātāju konferences datums pārcelts</title>
	<description>Ļoti atvainojamas par sagādātajām neērtībam un ceram, ka tas neradīs nekādus pārpratumus, bet Draugiem spēļu izstrādātāju konference 2010 tiek pārcelta no 29. aprīļa uz 13. maiju. Laiks vēl joprojām paliek 13:00. Precīzāka informācija par pasākumu vēl seko.</description>
	<guid>http://www.gamedev.lv/article/draugiem_lv_spelu_izstradataju_konferences_datums_parcelts</guid>
	<link>http://www.gamedev.lv/article/draugiem_lv_spelu_izstradataju_konferences_datums_parcelts</link>
	<comments>http://www.gamedev.lv/comments/index/185</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Latvijā</category>
	<pubDate>Tue, 20 Apr 2010 21:17:00 +0300</pubDate>
</item>
<item>
	<title>Browser spēļu izstrādātāju konference</title>
	<description>29. aprīlī Draugiem.lv rīko browser spēļu izstrādātāju konferenci, un uz  to ir aicināti pieteikties visi, kurus interesē spēļu izstrāde  interneta pārlūkiem.
Konferences mērķis ir:

    pastāstīt vairāk par sociālo tīklu  spēļu biznesu pasaulē (kurš strauji kļūst arvien grandiozāks un  grandiozāks),
    pastāstīt par to, kā Draugiem API (aplikāciju  programmēšanas interfeiss) piedāvā iespēju jebkuram, kuram ir spēļu  idejas, spējas un resursi, izstrādāt savu spēli un ar to pelnīt tepat  Latvijā. (šobrīd cilvēki reāli nopelna, izstrādājot minimālistiskas, bet  gana pievilcīgas spēles, kas ir balstītas uz mikromaksājumiem)
    ļaut jau pieredzējušiem spēļu izstrādātājiem padalīties pieredzē  un pastāstīt par problēmām, šajā jomā
    padiskutēt par sociālo  tīklu aplikāciju un spēļu izstrādi kā tādu.

Pasākumam ir  paredzēta oficiālā daļa, kurā cilvēki uzstāsies ar ne pārāk gariem  priekšlasījumiem par augstāk minētajām tēmām, un tai sekos neoficiālā  daļa ar uzkodām un draudzīgu papļāpāšanu savā starpā, un iespēju iegūt  jaunus kontaktus un paziņas, kurus vieno interese par interneta spēļu  izstrādi.
Ja tas viss interesē, tad rakstiet pasākuma organizatoram  Andrejam Kļaviņam uz andrejs.klavins@gmail.com, stādieties priekšā,  nosauciet savu nodarbi un pamatojumu interesei par šo konferenci (tā kā  vietu skaits var būt ierobežots, Draugiem.lv vēlas, lai uz to ierastos  pēc iespējas vairāk cilvēku, kurus tiešām interesē šis lauciņš un kuriem  varētu būt vēlme izstrādāt spēles).
Vēl visi ir aicināti padod informāciju par šo pasākumu tālāk sev  pazīstamajiem potenciālajiem spēļu izstrādes entuazistiem un  interesentiem.</description>
	<guid>http://www.gamedev.lv/article/browser_spelu_izstradataju_konference</guid>
	<link>http://www.gamedev.lv/article/browser_spelu_izstradataju_konference</link>
	<comments>http://www.gamedev.lv/comments/index/183</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Latvijā</category>
	<pubDate>Thu, 08 Apr 2010 22:43:00 +0300</pubDate>
</item>
<item>
	<title>Pikets</title>
	<description>Ir iznākusi kārtējā projekta pasmejies.lv spēlīte - Pikets. Šoreiz jūsu uzdevums ir iejusties piketētāja lomā un ieskaut visus politiķus piketētāju barā.</description>
	<guid>http://www.gamedev.lv/article/pikets</guid>
	<link>http://www.gamedev.lv/article/pikets</link>
	<comments>http://www.gamedev.lv/comments/index/182</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Arkādes</category>
	<pubDate>Mon, 05 Apr 2010 12:59:00 +0300</pubDate>
</item>
<item>
	<title>BattleShips</title>
	<description>Speele ir cilveekam pret AI.
Uzmaniiba jaapieveersh apakshaa status textam - tur 
paraadaas informaacija, ja pretinieka kugjis no shaaviena grimst.
Daudz no taa ko gribeeju izveidot nepaspeeju (grafika/skanja), 
bet prieks ka paspeeju tik cik paspeeju.
Daljeeji shis viss tika veidots citu izgliitoshanaas noluukiem
- attieciigi tika safilmeets.
Filmeeto materiaalu kopaa ar izejas kodu varees ieguut peec 
nodoshanas terminja.</description>
	<guid>http://www.gamedev.lv/article/battleships</guid>
	<link>http://www.gamedev.lv/article/battleships</link>
	<comments>http://www.gamedev.lv/comments/index/181</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Prāta spēles</category>
	<pubDate>Tue, 30 Mar 2010 18:24:00 +0300</pubDate>
</item>
<item>
	<title>&quot;ActionScript for Multiplayer Games and Virtual Worlds&quot; apskats</title>
	<description>Tā kā pēdējā laikā ir sanācis veidot vairākus masīvus daudzspēlētāju tiešsaistes (MMO) projektus Flash, pasūtīju literatūru, kas varētu kaut nedaudz palīdzēt šajā uzdevumā. Literatūras par šādām lietām internetā ir gaužām maz, tāpēc nācās ņemt to, kas ir: "ActionScript for Multiplayer Games and Virtual Worlds." Šajā apskatā nedaudz padaļīšos ar savu viedokli par šo grāmatu, neietekmējoties no citiem recenzentiem internetā.
Īsumā par grāmatu
Grāmatā ir 299 lappuses un tā sastāv no 16 nodaļām, kuru starpā ir (pilns satura rādītājs):

    Connecting users - viss par un ap tīkla savienojumiem un to veidiem
    Security: You vs. Everyone Else - dažādi ar tīkla un spēles loģikas drošību saistīti jautājumi
    Real-time Movement - kā tiek sinhronizētas kustības tīklā
    Tile-based Games - kā veidot uz lauciņiem (tile) bāzētu spēli
    Cooperative Game Play - kooperatīvas spēles
    Isometric View - viss par izometriju un ar to saistīto matemātiku spēlēs
    Virtual Worlds - kā tiek veidotas virtuālās pasaules

Pati grāmata servera realizācijai izmanto uz Java platformas veidoto ElectroServer, kas ir viens no populārākajiem MMO serveriem industrijā (cenas dēļ pirmo vietu šajā lauciņā ieņem SmarFox server). Visas grāmatas garumā lasītājs tiek apmācīts, kā rīkoties ar ElectroServer, un visi piemēri grāmatā tiek veidoti izmantojot bezmaksas rīku Flashdevelop un&#160; ElectroServer API.
Noderīga informācija
Savos projektos gan īsti netaisos izmantot ElectroServer tieši tā cenas dēļ ($72,000 par pilno licenci), taču ir nācies programmēt spēli uz Smartfox server, kas  tehnoloģijas ziņā ir ļoti līzīgs ElectroServer, tādeļ man šī grāmata jo  īpaši noderēja. No grāmatas varējas smelties arī dažādas idejas un tehnikas, ko pielietot citos projektos. Viena no svarīgākajām lietām, kā dēļ es tik ļoti gaidīju šo grāmatu ir kustību sinhronizācija un kavēšanās (latency) slēpšana ar reāliem piemēriem (Tanku spēle). Intersanti likās arī čata filtru, istabu un zonu koncepti, lietotāju avataru veidošana un dažādi izometrisko spēļu triki. Lielākā daļa no grāmatas satura daudziem spēļu programmētājiem varētu šķist zināms, taču iesācējiem šī grāmata būs tieši laikā. Iespējams pilnīgiem jauniņajiem, kas nav saskārušies ar Flash šī grāmata neies pie sirds.
Akmeņi autoru dārziņā
Tomēr grāmatai ir vairākas problēmas, kas dažiem varētu to ievietot kategorijā: nekam nederīgs.
Pirmkārt, kā jau minēju, grāmatā visi piemēri izmanto Flashdevelop, kas nav pieejams Mac lietotājiem, līdz ar to Mac lietotājiem šī gramata nebūs īsti paredzēta. Ir iespējams mēģināt piemērus nokmpilēt Flash CS4, taču tas prasīs nedaudz laika, pūliņus un ziņāsanas, kas nebūs iesācēju priekšrocība. Pie tam ne vienmēr piemērus izdosies nokompilēt arī uz Flashdevelop, jo dažos piemēros tiek izmantota fl.controls klase, kas Flex nav pieejama. Grāmatas autori gan solās lielāko daļu no šīm problēmām novērst.
Otrkārt, grāmatas nosaukums arī īsti neliecina par tās saturu, jo tā nav gids klientu un serveru programmēšanā, bet gan pamācība, kā veidot spraudņus (plugins) ElectroServer sistēmai. Tāpēc vienmēr iesaku pirms pirkt grāmatas, izlasīt detalizētu aprakstu par tām un, ja iespējams, paskatīties pāris lappuses no grāmatas. Kad es pirku grāmatu es lielāko daļu no tās jau biju izpētījis, nepirku kaķi maisā, tāpēc ar grāmatu arī esmu apmierināts.
Treškārt, šī grāmata arī nav paredzēta lasītāja apmācībai, kā izveidot MMO spēli no 0 līdz 100%, bet gan tikai apkopo lietas, kuras lasītājam varētu būt problēmas atrast internetā.
Verdikts
Kopumā es grāmatai liktu 7 no 10 ballēm, jo grāmata neatbild uz visiem ar MMO spēļu veidošanu saistītiem jautājumiem, taču tā paskaidro vairākas lietas, kuras internetā būtu pagrūti atrast. Galvenokārt grāmatu pasūtīju, jo esmu vairāk papīra, nevis google, cienītājs un noteikti iesaku to cilvēkiem, kas nopietni grasās veidot MMO spēles ar Flash. Ja ir vēlme, tad grāmatu varat pasūtīt Amazon.com.</description>
	<guid>http://www.gamedev.lv/article/actionscript_for_multiplayer_games_and_virtual_worlds_apskats</guid>
	<link>http://www.gamedev.lv/article/actionscript_for_multiplayer_games_and_virtual_worlds_apskats</link>
	<comments>http://www.gamedev.lv/comments/index/169</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Grāmatu apskati</category>
	<pubDate>Mon, 29 Mar 2010 21:20:00 +0300</pubDate>
</item>
<item>
	<title>Vērtēšanas sistēma</title>
	<description>Sen atpakaļ gamedev.lv pastāvēja vērtēšanas sistēma, ar kuras palīdzību lietotāji varēja novērtēt spēļu kvalitāti un interesantumu. Ar laiku šī iespēja no lapas izzuda, taču lietotāju lūguma dēļ vērtēšanas sistēma lapā ir atjaunota.
Kā lietot vērtēšanu? Ejiet uz sadaļu "Spēles", izvēlieties spēli, paspēlējiet to un ielieciet tik zvaigznes (5 baļļu sistēmā), cik jums liekas spēle ir pelnījusi.
Kāpēc vērtēšanas sistēma vajadzīga? Vēlāk jaunajiem lietotājiem spēļu sarakstā būs iespēja atlasīt populārākās un labāk novērtētās spēles, un gada beigās būs iespēja arī noteikt gada labāko spēli.
Paldies par atsaucību, laimīgu spēlēšanu!</description>
	<guid>http://www.gamedev.lv/article/vertesanas_sistema</guid>
	<link>http://www.gamedev.lv/article/vertesanas_sistema</link>
	<comments>http://www.gamedev.lv/comments/index/168</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Latvijā</category>
	<pubDate>Thu, 25 Mar 2010 15:17:00 +0200</pubDate>
</item>
<item>
	<title>Lietotāja saskarne (User Interface), 3. daļa - statiskās kontroles (static controls)</title>
	<description>
3. Lietotāja saskarne (user  interface) - statiskās kontroles (static controls)
&#160;Statiskās kontroles (static  controls)
Statiskās kontroles parasti  izmanto, lai ievietotu kādus zīmējumus, tekstu, vai sadalītu saskarni kaut kādās  grupās. Statiskās kontroles var saņemt peles ievadi (input). Kā jau teicu  iepriekšējā pamācībā, es centīšos pievienot lietas kas vēl nepieciešamas lietotāju saskarnei. To, ko iemācīsimies šodien varēs arī pievienot pogām  (buttons) un checkbox'iem.
Vispirms, kā parasti, izveidosim  klasi - CStaticControl:

class CStaticControl
{
    void Draw();
    void OnEvent(int nEvent,int nParam);

    char*    m_strCaption;
    GLuint  m_nImage;

    bool      m_bPressed;
    bool      m_bMouseOnIt;

    bool      m_bVisible;

    int         m_nPosX;
    int         m_nPosY;
    int         m_nSizeX;
    int         m_nSizeY;
};
Tātad mēs izveidojām līdzīgu klasi  CButton, tikai pievienojām vienu mainīgo - m_nImage. Ja jūs lietojat OpenGL, tad  šis parametrs droši vien būs GLuint vai arī kā savādāk (piemēram, IDirect3DTexture9*). Šo mainīgo mēs izmantojam tad, ja mūsu statiskā  kontrole ir zīmējums (image).
Un tagad es pastāstīšu par lietām  ko gribēju pievienot lietotāju saskarnei - MOUSEENTER, MOUSELEAVE, DOUBLECLICK,  DRAG.
Es mazliet paskaidrošu par katru no  šīm lietām: MOUSEENTER - tiek sūtīts, ja lietotājs ar peli ieiet kontroles  zonā, MOUSELEAVE - ja lietotājs pamet kontroles zonu, DOUBLECLICK - ja  lietotājs izdara dubultklikšķi kontroles zonā, DRAG - ja lietotājs noklikšķina  kontrolē un tad velk (drag) to.
Šeit būs kods OnEvent funkcijai:

void CStaticControl::OnEvent(int nEvent,int nParam)
{
    if (!m_bVisible) return;

    switch(nEvent)
    {
        case CURSORMOVEX:
        case CURSORMOVEY:
        {
            if (m_bPressed) SendMessage(STATICCONTROL_DRAG,this); //ja kontrole ir nospiesta un pele kustas, tad mēs to velkam

            POINT pos;
            GetCursorPos(&amp;pos);

            if (pos.x&gt;=m_nPosX &amp;&amp;
                pos.x&lt;=m_nPosX+m_nSizeX &amp;&amp;
                pos.y&gt;=m_nPosY &amp;&amp;
                pos.y&lt;=m_nPosY+m_nSizeY)

             {
                if (!m_bMouseOnIt) SendMessage(STATICCONTROL_MOUSEENTER,this); //ja pirms tam pele nebija kontroles zonā, tad tagad tā ir iegājusi kontroles zonā
                m_bMouseOnIt=true;
             }
             else
             {
                if (m_bMouseOnIt) SendMessage(STATICCONTROL_MOUSELEAVE,this); //ja pirms tam pele bija kontroles zonā, tad tagad tā ir pametusi kontroles zonu
                m_bMouseOnIt=false;
             }
        }
        break;

        case DOUBLECLICK:
        {
            if (m_bMouseOnIt) SendMessage(STATICCONTROL_DOUBLECLICK,this); //ja ir noticis dubultklikšķis un pele atrodas kontroles zonā, tad dubultklikšķis ir noticis uz šīs kontroles
        }
        break;

        case MOUSEBUTTONDOWN:
            if (nParam==LEFTMOUSEBUTTON)
            {
                if (m_bMouseOnIt)
                {
                    m_bPressed=true;
                }
            }
        break;
 
        case MOUSEBUTTONUP:
            if (nParam==LEFTMOUSEBUTTON &amp;&amp; m_bPressed)
            {
                if (m_bMouseOnIt) SendMessage(STATICCONTROL_CLICK,this); //statiskā kontrole skaitās noklikšķināta, ja peles poga ir uz tās nospiesta un palaista vaļā
                 m_bPressed=false;
            }
        break;
    }
}
Pamatā jau šeit ir palicis viss tas  pats, kas CButton OnEvent funkcijā, tikai ir pievienoti šie 4 notikumi (events).  Kā jau teicu, šos 4 notikumus var pievienot arī pogām un visām pārējām  kontrolēm, tādēļ šī pamācība nav tikai par statiskajām kontrolēm.
Un tagad Draw funkcija:

void CStaticControl::Draw()
{
    if (!m_bVisible) return;

    //zīmējam tekstu un zīmējumu
}

Nekā sarežģīta šeit nav. Bet ja jūs  gribat teksta kontroles un zīmējuma kontroles atsevišķi, tad jums vajadzētu  pievienot int m_nType CStaticControl  klasei. šādā gadījumā Draw funkcija izskatīsies šādi:

void CStaticControl::Draw()
{
    if (!m_bVisible) return;

    switch(m_nType)
    {
        case STATICCONTROL_TEXT:
        //zīmējam tekstu
        break;
        case STATICCONTROL_IMAGE:
        //zīmējam zīmējumu
        break;
    }
}
Jūs protams varat pievienot arī  savus notikumus (events) - piemēram, RIGHTBUTTONCLICK utt. bet to es atstāšu  Jūsu ziņā (domāju pēc šīm pamācībām Jūs varēsiet to izdarīt). Jūs, protams,  varat pievienot arī tādus statisko kontroļu tipus, kā Windows - simple  graphics (vienkārša grafika - četrstūris, aplis, utt.), ownerdraw (kontroles  kuras zīmē nevis engine, bet jūs pats - piemēram, group box, logi, utt), taču  nedomāju ka bez tiem nevarētu iztikt.

Beigas&#160;
Kārtējā pamācība nu ir galā. Un  atkal - ja jums ir kādi jautājumi, labojumi vai jaunas idejas, tad rakstiet komentāros.
Nākošā pamācība: 4. UI (lietotāja  saskarne) - editbox, slidebar.
</description>
	<guid>http://www.gamedev.lv/article/lietotaja_saskarne_user_interface_3_dala_statiskas_kontroles_static_controls</guid>
	<link>http://www.gamedev.lv/article/lietotaja_saskarne_user_interface_3_dala_statiskas_kontroles_static_controls</link>
	<comments>http://www.gamedev.lv/comments/index/167</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Pamācības</category>
	<pubDate>Wed, 24 Mar 2010 14:50:00 +0200</pubDate>
</item>
<item>
	<title>Battle</title>
	<description>Parasta kuģīšu spēle.
Autora komentārs: Vispaar es shito veidoju lielaa steigaa(iemesli mineeti readme)
bet shis ir mans pirmais kautcik nopietnais projekts...</description>
	<guid>http://www.gamedev.lv/article/battle</guid>
	<link>http://www.gamedev.lv/article/battle</link>
	<comments>http://www.gamedev.lv/comments/index/166</comments>
		<category>Prāta spēles</category>
	<pubDate>Wed, 24 Mar 2010 10:14:00 +0200</pubDate>
</item>
<item>
	<title>Pasmejies.lv piesaista mediju interesi</title>
	<description>Šodien tapa raksts par 2E Games, kura viens no īpašniekiem esmu arī es, spēļu projektu pasmejies.lv. Raksts ir pieejams TVNet un citos lielākajos Latvijas medijos, kā arī laikrakstā Latvijas Avizē.</description>
	<guid>http://www.gamedev.lv/article/pasmejies_lv_piesaista_mediju_interesi</guid>
	<link>http://www.gamedev.lv/article/pasmejies_lv_piesaista_mediju_interesi</link>
	<comments>http://www.gamedev.lv/comments/index/165</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Latvijā</category>
	<pubDate>Thu, 18 Mar 2010 11:17:00 +0200</pubDate>
</item>
<item>
	<title>Game Developer Conference 2010</title>
	<description>Klāt ir spēļizstrādes gada lielākais pasākums - Game Developer Conference 2010 (9. - 13. marts), kas apvieno spēļizstrādātjus no visas pasaules jau kopš 1988. gada.
Game Developer Conference (GDC) ir lielākais ikgadējais profesionālu spēļu izstrādātāju saiets, kuru katra gada pavasarī San Francisko rīko Think Service Game Group. Tas tiek veltīts datora, konsoļu, rokas (handheld) ierīču, mobilo ierīču un tiešsaistes spēļu izstrādātāju apmācībai, iedvesmošanai un savstarpējai pieredzes apmaiņai.
Konferences ietvaros notiek arī Independent Game Festival (IGF), kas tiek veltīts tikai neatkarīgo spēļizstrādātāju apmācībai un labāko šīs nozares speciālistu apbalvošanai. IGF organizatori ir Gamasutra.com autori CMP Game Group.
Šogad GDC programma ir paredzēti šādi pasākumi:

    8th Annual Game Audio Network Guild Awards - pasākums spēļu audio industrijas tehnoloģisko sasniegumu un radošuma apbalvošanai;
    10th Annual Game Developers Choice Awards - šis pasākums, savukārt, veltīts spēļu industrijas mākslinieku un tehnoloģijas ģēniju apbalvošanai;
    12th Annual Independent Games Festival - neatkarīgo spēļizstrādātāju festivāls ar balvu fondu 50 tūkstoš dolāru apmērā;
    Career Pavilion - pasaules lielākais darbavietu gadatirgus, kurā darbavietas piedāvā vairāk kā 40 lielākās industrijas kompānijas;
    GDC Expo - iespēja iepazīsties ar jaunākajām tehnoloģijām un uzdot jautājumus lielākajiem industrijas speciālistiem;
    Game Audio Network Guild (GANG) Annual Town Hall Meeting - G.A.N.G spēļu audio industrijas pārstāvju seminārs un balvu pasniegšana;
    Game Career Seminar - seminārs veltīts karjeras veidošanai spēļizstrādes industrijā;
    Interactive Audio Special Interest Group (IASIG) 15th Annual Town Hall Meeting - kārtējais pasākums, kas veltīts spēļu audio industrijai.

Paredzu, ja spēļizstrāde Latvijā turpinās attīstīties, tad sāksim piekopt mūsu kaimiņvalstu praksi un vākt grupu, lai apmeklētu šo pasākumu. Taču pagaidām mums nāksies sekot līdzi GDC prezentācijām caur YouTube vai citiem video kanāliem.
&#160;</description>
	<guid>http://www.gamedev.lv/article/game_developer_conference</guid>
	<link>http://www.gamedev.lv/article/game_developer_conference</link>
	<comments>http://www.gamedev.lv/comments/index/164</comments>
			<author>elviss@elviss.lv (elviss)</author>
		<category>Ārzemēs</category>
	<pubDate>Sun, 07 Mar 2010 23:19:00 +0200</pubDate>
</item>
<item>
	<title>Citādāks veids, kā mocīt attēlu uz ekrāna...</title>
	<description>Ir tāds efekts, kuru gan jau daudzi labi pazīst kā „screen space distortion” jeb ekrāna skata deformācija (ja te kādu interesē mana šī termina latviskā versija). Tātad, šis efekts pārveido gatavo ekrāna attēlu dažādos veidos. Mūsdienās cilvēki ir vairāk pazīstami ar šī darba darīšanu pikseļu šeiderī, tomēr pirms dažiem gadiem dažiem cilvēkiem vēl bija pazīstama cita metode.
Šeit redzams kāds mans WIP projekts (veidots uz Game Maker):

Šeit redzami pēcapstrādes efekti:

Mēs visi labi zinām, ka Game Maker neatbalsta pikseļu šeiderus un pat šeiderus vispār. Pieliktajā arhīvā var apskatīties, kā viss strādā. Lai gan tur ir viens paša veidots hacks, kurš salabo dažas Game Maker’a problēmas ar tekstūrām, uz kurām var zīmēt, tas šo efektu nerada. Kāds trakais var mēģināt pārtvert visus īstos IDirect3DDevice8 interfeisa funkciju izsaukumus un redzēs, ka nekādus šeiderus es neuzstādu. Vai arī lasiet tālāk, lai noskaidrotu, kas tas pa brīnumu ir.
Varbūt šis attēls palīdzēs saprast:

Tātad, šī metode nozīmē to, ka tiek ģenerētas virsotnes (vertex’i), ar kuriem tiek uzzīmēta tā tekstūra, kura satur ekrāna attēlu.
Šādā veidā iespējams dabūt dažādus attēlus, piemēram šādu:
(Neslēpu malas, lai varētu labāk saprast, kā izskatās rezultāts.)

Virsotņu ģenerēšanas vietā var lietot gatavu 3d modeli.
Ir pat šādi iespējams izveidot „salauztās kameras” efektu:

Šeit lietots speciāls 3d modelis ar šādām tekstūru koordinātām:

Tagad parādīšu pēcapstrādes efektu lietošanas algoritmu un to, cik vienkārši ir ielikt šādu efektu algoritmā:

    Pārslēdzamies uz kameras skatu (uzstādām vajadzīgās matricas);
    Uzstādām tekstūru, kurā zīmēsim visu;
    Uzzīmējam visu, ko parasti zīmējām (pasauli, varoņus, efektus..);
    Pārslēdzamies uz tālākai lietošanai ērtām matricām vai izlaižam šo soli, ja zīmēsim netransformētus 3d modeļus/trijstūrus.

- un šeit var izvēlēties, vai tiek lietots parastais variants un zīmēts viss ar pikseļu šeideri, tādā gadījumā tiek zīmēts taisnstūris; vai arī zīmējam speciālo 3d modeli/trijstūrus, kurš(-i) deformē kameras skatu.
Kas notiek tad, kad vajag apvienot šo efektu ar pikseļu šeideri? Atbilde ir pavisam vienkārša – virsotņu šeiderī jāizrēķina koordinātas citādāk (no pozīcijas vektora) vai arī 3d modelim / trijstūriem jāiedod 2. tekstūru koordinātas.
Pagaidām atceros, ka šādu pēcapstrādes efektu lieto tikai GTA: San Andreas un Metal Gear Solid 2. Tomēr tas nenozīmē, ka efekts vecuma dēļ ir izmetams – drīzāk ir otrādi - vienkāršā implementācija un plašās modifikāciju iespējas to ļauj lietot.
Es ceru, ka šis īsais raksts palīdzēja saprast, kā ievietot šo efektu spēlē un to, ko var ar to izdarīt. Ja ir vēl kādi jautājumi, pacentīšos uz tiem atbildēt komentāros.</description>
	<guid>http://www.gamedev.lv/article/citadaks_veids_ka_mocit_attelu_uz_ekrana</guid>
	<link>http://www.gamedev.lv/article/citadaks_veids_ka_mocit_attelu_uz_ekrana</link>
	<comments>http://www.gamedev.lv/comments/index/163</comments>
			<author>snake5@inbox.lv (snake5)</author>
		<category>Pamācības</category>
	<pubDate>Sat, 06 Mar 2010 15:27:00 +0200</pubDate>
</item>
<item>
	<title>Kā notiek darbs pie spēlēm Blizzard</title>
	<description>Šodien kādā Latvijas saitā ieraudzīju bildes no spēļu izstrādātāju kompānijas Blizzard ofisa un nolēmu nedaudz pameklēt informāciju, kā tad īsti notiek darbs pie spēlēm šajā kompānijā.
Blizzard ir kompānija, kas kopš 1991. gada ir radījusi vairāk kā 30 spēles, kuru sarakstā ir tādi monstri kā Warcraft, Starcraft, Diablo un World of Warcraft, kas ir viena no populārākajām spēlēm pasaulē (atpaliekot tikai no The Sims sērijas). Šīm spēlēm Blizzard pat veltījuši atsevišķu ikgadēju pasākumu - BlizzCon.
Pats galvenais Blizzard ofiss atroads Irvainā (Irvine), Kalifornijā. Ofisā atrodas gan biblitēka, pārpildīta ar Blizzard grāmatām, gan muzejs, kas, protams, pilns ar Warcraft un Diablo figūrām, mākslas galerija, atpūtas telpas ar dāžādām izklaides iespējām, basketbola, volejbola laukumi... vienvārdsakot viss, kas nepieciešams, lai darbiniekam nebūtu vēlmes no turienes aiziet.
Kopumā Blizzard ir diezgan noslēpumaini un nemīl izpaust par sevi daudz informācijas, taču internetā tika publicētas ap 100 bildes no viņu ofisa. Lūk dažas no labākajām (pašā apakšā ir arī video):

Cik noprotu, tad šis atrodas pie ieejas

Šeit arīmanis pieminētā bibliotēka

Koncepta māksla

Kā tad nu Blizzard bez savām figūrām



Ļoti populāra bilde internetā - World of Warcraft serveru/pasauļu (realm) izvietojums reālajā pasaulē

Lūk tā notiek spēļu testēšana

Darbs pie pašām spēlēm

Sports

Droši vien tādā uzņēmumā nevar strādāt bez smadzeņu dotībām

Cita veida sports



</description>
	<guid>http://www.gamedev.lv/article/ka_notiek_darbs_pie_spelem_arzemes</guid>
	<link>http://www.gamedev.lv/article/ka_notiek_darbs_pie_spelem_arzemes</link>
	<comments>http://www.gamedev.lv/comments/index/162</comments>
			<author>elvman@inbox.lv (elvman)</author>
		<category>Ārzemēs</category>
	<pubDate>Tue, 02 Mar 2010 16:56:00 +0200</pubDate>
</item>

</channel>
</rss>