játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5484
FZoli:    4893
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2526

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2196
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1654
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] > 55 < [60] [65] [70] [75] [80] [85] [90] [95] [100] [105] [110] [115] [120] [125] [130] [135] [140] [142]
gaborlabor - Moderátor | 4449 hsz       Online status #129063   2010.03.14 17:43 GMT+1 óra  
A glut biztosan nem, hiszen nem is rajzolásra való (de pár dolgot tud pl. utah teapot, gömb, kocka, kúp stb - de 2D-s dolgokat nem).
A GDI jó választás lehet szerintem is.

   
Seeting - Törzstag | 2306 hsz       Online status #129062   2010.03.14 17:39 GMT+1 óra  
És ez megy borland fordítóval is?
   
Asylum - Törzstag | 5484 hsz       Online status #129060   2010.03.14 17:36 GMT+1 óra  
sima GDI is tud szerintem (vagy linux alatt az X).
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Seeting - Törzstag | 2306 hsz       Online status #129059   2010.03.14 17:35 GMT+1 óra  
Nekem olyan kell, mint amilyen a pascal-hoz volt. A glut az egy openGL-es cucc, nem akarom ezért belefordítani az ogl-t.
   
Wolfee - Törzstag | 1337 hsz       Online status #129058   2010.03.14 17:33 GMT+1 óra  
glut?
FZoli jóváhagyásával XD

   
Seeting - Törzstag | 2306 hsz       Online status #129057   2010.03.14 17:33 GMT+1 óra  
Létezik valamilyen standard grafikai lib amivel ilyen alap dolgokat lehet rajzolni? kör, négyzet, ilyesmi... 2D
   
Asylum - Törzstag | 5484 hsz       Online status #129048   2010.03.14 17:04 GMT+1 óra  
Egyrészt a backbuffert inkább igy kérd el:

Kód:
LPDIRECT3DSURFACE9 backbuffer = NULL
device->GetRenderTarget(0, &backbuffer);

// cucc

device->SetRenderTarget(0, backbuffer);
// végsö rajz

backbuffer->Release();


Másrészt mindig mikor uj rendertargetet állitasz be érdemes letörölni azt és a zbuffert is (és figyelj oda hogy a beállitás UTÁN töröld le).
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Pretender - Törzstag | 2498 hsz       Online status #129036   2010.03.14 16:20 GMT+1 óra  
No kerem szepen. Multkoriban csinaltam az occlusion culling-ot, viszont eszrevettem egy kis bugot. A hajoknal egy-egy boxot rajzolok ki az occlusion teszt resznel. Valahogy igy nez ki pseudo kodban:
Kód:
- set rendertarget (0,nev)
- entities listan vegigmegyunk:
- ha az i-edik entitiy nem latszik, akkor megyunk a kovetkezore a listaban (elozetes vfc teszt)
- a beepitett dx-es algoval szamolom, hogy latszik-e az adott entity, majd fogom es beallitom ezt neki (a lathatosagot)
- reset to backbuffer
- entities lista ismet:
- ha latszik az i-edik entity, kirajzolom a rendes mesht.

Ami a kepen lathato az az urhajo egyik box-a. Fogalmam sincs, hogy hogyan kerult oda, nem is igazan mozog egyutt rendesen a kameraval, szoval eleg bizonytalan volt megtalalni:

set render target egyertelmu.
Kód:
for (DWORD i = 0; i < entities.size(); i++)
{
    //ha mar a vfc azt mondta, hogy nem latszik...
    if (entities[i]->GetOCulled())
        continue;

    occlusion->GetQuery()->Issue(D3DISSUE_BEGIN);

    entities[i]->SetCamera(camera);
    //CSAK a box-okat rajzolom ki
    entities[i]->DrawOcclusion();

    occlusion->GetQuery()->Issue(D3DISSUE_END);

    DWORD pixelsVisible = 0;
    while (occlusion->GetQuery()->GetData((void*)&pixelsVisible, sizeof(DWORD), D3DGETDATA_FLUSH) == S_FALSE);

    //a dx-es mutyur elvegzi helyettem a lenyeget
    if (pixelsVisible == 0)
        entities[i]->SetOCulled(true);
    else
        entities[i]->SetOCulled(false);
}

a reset to back buffer pedig igy nez ki:
Kód:
IDirect3DSurface9* bb;
app->GetDevice()->GetBackBuffer(0, 0, D3DBACKBUFFER_TYPE_MONO, &bb);
app->GetDevice()->SetRenderTarget(0, bb);
bb->Release();

Ja meg talan ami meg itt erdekes lehet az a box-ok kirajzolasa:
Kód:
GetGame()->GetDevice()->SetTransform(D3DTS_WORLD, (D3DXMATRIX*)world.m);
GetGame()->GetDevice()->SetTransform(D3DTS_VIEW, (D3DXMATRIX*)camera->GetView().m);
GetGame()->GetDevice()->SetTransform(D3DTS_PROJECTION, (D3DXMATRIX*)camera->GetProjection().m);

occlusionModel->GetMesh()->DrawSubset(0);

Eddig akarmit probaltam mindig ott volt az a kis ize (es mindig a backbuffer szinevel, ezert is vettem eszre alig)
De nem is igazan ertem, hogy ha a render targetbe rajzolom csak ki a boxokat, akkor hogy latszodhat?...

szerk.:
Erdekes: ha az occlusion teszt resz elott es a backbufferre valo reseteles elott tolok egy ilyet, hogy:
Kód:
game->GetDevice()->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(128,128,128), 1.0f, 0.0f);

akkor megszunik a problema. Na most ez nekem eleg is lenne, de megsem.. (na ezt megaszontam' Tudni szeretnem, hogy mi ez a bug

Ezt a hozzászólást Pretender módosította (2010.03.14 16:31 GMT+1 óra, ---)

   
glezmen - Törzstag | 381 hsz       Online status #128938   2010.03.13 12:54 GMT+1 óra  
Idézet
bit.0x8000 :
Idézet
Seeting :
gvim + g++

Tessék. Kész a fejlesztő környezeted



És érdekes módon ebben a környezetben is írtak használható programokat...



en jelen pillanatban is vimben (nem gvim, bar az ugyanaz, olyan meg nincs hogy vim++ ) irom a PACC-ra keszulo jatekomat, meg ugy altalaban mindent (munka, stb)
zsenialis szovegszerkeszto, fenyeveket ver minden masra amit ismerek
buildhez raszoktam a CMake-re, jo kis tool, nem is kell mellejuk mas

MOD: amugy ha 'fullextras' IDE kell, akkor erdemes megnezni a Qt Creatort, egesz jo kis cucc, bele van integralva a Qt designer, meg van vim-modja is, bar sajna teljesen hasznalhatatlan a valodi vimhez kepest

a KDevelop meg borzalom

Ezt a hozzászólást glezmen módosította (2010.03.13 13:06 GMT+1 óra, ---)
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128920   2010.03.13 03:39 GMT+1 óra  
   
Wolfee - Törzstag | 1337 hsz       Online status #128919   2010.03.13 03:07 GMT+1 óra  
hát nem akarlak megbántani, de seet itt jóval öregebb motoros, mint te
FZoli jóváhagyásával XD

   
bit.0x8000 - Törzstag | 574 hsz       Online status #128918   2010.03.13 03:03 GMT+1 óra  
"Pffff. Ezt meg se hallottam.

...

Most elmegyek és hozok egy kis szentelt vizet ellened. XD"

Az öreg motorosokon az sem fog...

Písz
   
Wolfee - Törzstag | 1337 hsz       Online status #128914   2010.03.13 02:53 GMT+1 óra  
btw, mi is vimet és g++ -t használunk renges munkahelyi fejlesztőkörnyezetként. mondjuk amit használunk linux disztrót, abban semmi ablakkezelő nincs,ez is igaz
FZoli jóváhagyásával XD

   
Seeting - Törzstag | 2306 hsz       Online status #128912   2010.03.13 02:36 GMT+1 óra  
Pffff. Ezt meg se hallottam.

...

Most elmegyek és hozok egy kis szentelt vizet ellened. XD
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128911   2010.03.13 02:34 GMT+1 óra  
Idézet
Seeting :
Bizonyítsd be, hogy a GTA IV-et nem ezzel a környezettel írták!



Ha ebben írták volna, akkor jó lenne...
   
Seeting - Törzstag | 2306 hsz       Online status #128910   2010.03.13 02:28 GMT+1 óra  
Bizonyítsd be, hogy a GTA IV-et nem ezzel a környezettel írták!
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128909   2010.03.13 02:15 GMT+1 óra  
Idézet
Seeting :
Kimondta hogy nem? Bizonyítsd be, hogy én nem ezzel dolgozom...



Miért tenném?
   
Seeting - Törzstag | 2306 hsz       Online status #128908   2010.03.13 02:03 GMT+1 óra  
Kimondta hogy nem? Bizonyítsd be, hogy én nem ezzel dolgozom...
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128906   2010.03.13 02:00 GMT+1 óra  
Idézet
Seeting :
gvim + g++

Tessék. Kész a fejlesztő környezeted



És érdekes módon ebben a környezetben is írtak használható programokat...
   
Seeting - Törzstag | 2306 hsz       Online status #128905   2010.03.13 01:50 GMT+1 óra  
gvim + g++

Tessék. Kész a fejlesztő környezeted
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128904   2010.03.13 01:49 GMT+1 óra  
Idézet
MaximumViolence :
ha mar code::blocks,mondjatok mar linuxra egy ertelmes ide-t.code::blocks-nal szebb,jobb letezik?



Vim ?
   
MaximumViolence - Törzstag | 1020 hsz       Online status #128902   2010.03.13 00:46 GMT+1 óra  
az meg szornyubb
Ez egy reszeg post...

   
Asylum - Törzstag | 5484 hsz       Online status #128901   2010.03.13 00:42 GMT+1 óra  
KDevelop
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
MaximumViolence - Törzstag | 1020 hsz       Online status #128898   2010.03.13 00:37 GMT+1 óra  
ha mar code::blocks,mondjatok mar linuxra egy ertelmes ide-t.code::blocks-nal szebb,jobb letezik?
Ez egy reszeg post...

   
Asylum - Törzstag | 5484 hsz       Online status #128893   2010.03.13 00:18 GMT+1 óra  
Nah a megoldás triviálisabb mint a void*.
Azt elfelejtette emliteni a kolléga, hogy code::blocks-ot használ, ami úgylátszik butább mint az átlag és az örökölt template memberre igy kell hivatkozni:

Kód:
this->_x;
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Asylum - Törzstag | 5484 hsz       Online status #128885   2010.03.13 00:08 GMT+1 óra  
Oké de akkor mire dobja a hibát?
Most soronként könyörögjem ki? Vagy gyere msn-re.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Joga - Törzstag | 1791 hsz       Online status #128884   2010.03.13 00:07 GMT+1 óra  
a number mutatójával csak az első paramétert írom ki, amit simán a gettel elérek, mivel már az ősosztályban definiálva van
(ಠ ›ಠ) Stewie!

   
Asylum - Törzstag | 5484 hsz       Online status #128883   2010.03.13 00:05 GMT+1 óra  
Statikus és dinamikus típus apám; dinamikus kötés, polimorfizmus.

A Number-ben hol van definiálva getx() meg gety()? (már ha igy irod ki, egyébként még mindig nem irtad be azt a kódrészletet amire a hibát irja).
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Joga - Törzstag | 1791 hsz       Online status #128882   2010.03.13 00:02 GMT+1 óra  
Kód:
Number<int> my_number;
my_number.set( 31415 );

Pair<int> my_pair;
my_pair.setx( 10 );
my_pair.sety( 20 );


Number<int> *numptr = &my_pair;

...
Innentől már csak kiírogatom a különböző értékeket
(ಠ ›ಠ) Stewie!

   
Asylum - Törzstag | 5484 hsz       Online status #128879   2010.03.12 23:41 GMT+1 óra  
Nálam továbbra is tökéletesen müködik.
Legalábbis ez a kód amit most beirtál.

Hogyan példányosítod?
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Joga - Törzstag | 1791 hsz       Online status #128870   2010.03.12 21:07 GMT+1 óra  
jó bocs, na tegyük fel, hogy ott van, rosszul másoltam be, de viszont arra van tipped hogy miért nem megy template-el, ha inttel megy?
(ಠ ›ಠ) Stewie!

   
Asylum - Törzstag | 5484 hsz       Online status #128868   2010.03.12 20:36 GMT+1 óra  
Most az az igazság, hogy minden alkalommal totál más kódot irsz be, például az elején még helyesen irtad be, most megint lehagytál valamit:

template <typename T>
class Pair : public Number<T>
{
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Joga - Törzstag | 1791 hsz       Online status #128867   2010.03.12 20:33 GMT+1 óra  
itt van template-esen, nem megy:
Kód:
template< typename T >
class Number{

    protected:
        T _x;

    public:

        void set( T x ){ _x = x; }
        T get( void ){ return _x; }


};
class Pair : public Number<T>{

    protected:
        T _y;

    public:
        void setx( T a ){ _x = a; }
        void sety( T b ){ _y = b; }
        T getx( void ){ return _x; }
        T gety( void ){ return _y; }

};


itt pedig behelyettesítve int-tel, ez viszont hibátlan:
Kód:
#define T int

class Number{

    protected:
        T _x;

    public:

        void set( T x ){ _x = x; }
        T get( void ){ return _x; }


};

class Pair : public Number{

    protected:
        T _y;

    public:
        void setx( T a ){ _x = a; }
        void sety( T b ){ _y = b; }
        T getx( void ){ return _x; }
        T gety( void ){ return _y; }

};
(ಠ ›ಠ) Stewie!

   
Asylum - Törzstag | 5484 hsz       Online status #128865   2010.03.12 20:29 GMT+1 óra  
Akkor másold be rendesen a hibát pls.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Joga - Törzstag | 1791 hsz       Online status #128857   2010.03.12 18:49 GMT+1 óra  
Nah, a template zavar be, ha azt kiveszem, és simán int-tel helyettesítem, akkorm simán működik, template-el viszont valamiért nem szereti megtalálni az örökölt tagot
(ಠ ›ಠ) Stewie!

   
Germo - Tag | 41 hsz       Online status #128819   2010.03.12 09:41 GMT+1 óra  
Szerintem sokszor hasznos lehet belemenni ilyen elméleti programozásokba. Tetszik a kód tömörsége ... és nyilvánvalóvá teszi számomra a tényt amit jól tudok: lövésem sincs a C-hez.
Sikerült egy Z80 as, Turbo-Pascal ... nagy szünet ... flash vonalon elkerülnöm.
A végtelenbe és tovább!
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128812   2010.03.12 01:05 GMT+1 óra  
Idézet
glezmen :
indithatnek most f*sza kis flame-et, de inkabb nem teszem, piisz



Miattam ne fogd vissza magad.
(Qt és GTK tekintetében amúgy teljesen pártatlan vagyok.)
   
glezmen - Törzstag | 381 hsz       Online status #128806   2010.03.12 00:02 GMT+1 óra  
Idézet
bit.0x8000 :
Mindent ésszel kell alkalmazni: A Qt biztosan sokkal fejlettebb, de ahova elég a GTK, oda azt kell használni...



indithatnek most f*sza kis flame-et, de inkabb nem teszem, piisz
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128805   2010.03.11 23:39 GMT+1 óra  
Idézet
glezmen :
hat az egyszeruseggel vitaba szallnek, borzalmasan agyon van bonyolitva (mondjuk ahhoz kepest hogy OOP-t csinaltak 'C-ul' meg egesz OK)
gyorsnak valoban gyors azert en maradok a Qt-nal...



Mindent ésszel kell alkalmazni: A Qt biztosan sokkal fejlettebb, de ahova elég a GTK, oda azt kell használni...

písz
   
glezmen - Törzstag | 381 hsz       Online status #128804   2010.03.11 23:29 GMT+1 óra  
hat az egyszeruseggel vitaba szallnek, borzalmasan agyon van bonyolitva (mondjuk ahhoz kepest hogy OOP-t csinaltak 'C-ul' meg egesz OK)
gyorsnak valoban gyors azert en maradok a Qt-nal...
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128802   2010.03.11 23:24 GMT+1 óra  
Idézet
glezmen :
ezt mar kitalaltak, ugy hivjak hogy GTK es szornyu



Az viszont legalább gyors és egyszerű, ahhoz képest mit számíthat az, hogy "szornyu" ?
   
glezmen - Törzstag | 381 hsz       Online status #128800   2010.03.11 23:09 GMT+1 óra  
Idézet
Most agyon fogtok vágni de oop "szimulálás" C-ben (unatkoztam):


ezt mar kitalaltak, ugy hivjak hogy GTK es szornyu
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128799   2010.03.11 22:50 GMT+1 óra  
Idézet
Matzi :
A lag csökkentése szerintem túlságosan számolás igényes feladat, de érdemes megnézni, csak valószínűleg nem nyersz vele sokat.



Szerintem ha folyamatosan nagy a válaszidő, akkor egy "gyors" játéknál megfeszülhetsz, akkor sem lesz rendesen játszható (magánvélemény persze)...
   
Matzi - Szerkesztő | 2526 hsz       Online status #128791   2010.03.11 21:46 GMT+1 óra  
gaborlabor:
Alapvetően a karakter mozgását számolod a klienseden, és a szerver számolja a találatot, vagyis hogy ki hal meg, az mindig csak a szerveren múlik. És ha megnézed a legtöbb játékot, ott simán előfordul, hogy lagol a játék, de amíg a késleltetés kicsi, addig nem baj.

A lag csökkentése szerintem túlságosan számolás igényes feladat, de érdemes megnézni, csak valószínűleg nem nyersz vele sokat.

Amúgy meg ott ahol 10-20 ember gépfegyverrel lövi egymást (netán még botok is vannak), ott a lövedékek egyesével mozgatása nem szerencsés taktika.
If your game idea starts with the story it’s not a game idea.
Stories in games are optional.
   
bit.0x8000 - Törzstag | 574 hsz       Online status #128787   2010.03.11 20:29 GMT+1 óra  
Idézet
Asylum :
Most agyon fogtok vágni de oop "szimulálás" C-ben (unatkoztam):

http://people.inf.elte.hu/asylum/programming/C/oop/



Még mindig hasznosabb, mintha flémeltél volna...

szerk: Nekem régebben olyan jutott eszembe, hogy unix socket-ek használatával külön futó programokat összehangolni oop-szerűen... Aztán másnapra kijózanodtam.

Ezt a hozzászólást bit.0x8000 módosította (2010.03.11 20:37 GMT+1 óra, ---)
   
gaborlabor - Moderátor | 4449 hsz       Online status #128781   2010.03.11 19:34 GMT+1 óra  
Sharp: köszi szépen a linkeket, valami ilyesmit kerestem!

   
Asylum - Törzstag | 5484 hsz       Online status #128777   2010.03.11 19:14 GMT+1 óra  
Most agyon fogtok vágni de oop "szimulálás" C-ben (unatkoztam):

http://people.inf.elte.hu/asylum/programming/C/oop/
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Sharp - Tag | 130 hsz       Online status #128776   2010.03.11 19:12 GMT+1 óra  
Ezt a véletlent, pont tegnap olvastam utána, hogy is működik ez.

http://web.cs.wpi.edu/~claypool/courses/4513-B03/papers/games/bernier.pdf
http://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking ( ennek van magyar megfelelője is, most nem találom )

Itt le van írva, hogy bizony a kommunikáló felek küldözgetik az idejüket (tick!, diszkrét időintervallumokban történő frissitéskor), és még sok ínyencség: történeti tábla karbantartása, annak érdekében, hogy egy nagyobb latencyvel rendelkező játékos számára a szerver vissza tudja állítani minden objektum pozicióját abba a pillanatba, amikor a szóban forgó játékos például tüzelt. Inter- és extrapoláció, és a már elhangzott kliens oldali predikció( ahol is a szerver !nem! bízik a kliensben).

QuakeWorld, Quake 2, Quake 3 forráskódja elérhető, ezek mind megtalálhatóak bennük. Sőt a neten számos doksi van, ami segíti a forráskódok gyors megértését.

   
gaborlabor - Moderátor | 4449 hsz       Online status #128775   2010.03.11 19:07 GMT+1 óra  
A lentebb linkelt cikkben viszont azt írják (logikusnak is tűnik), hogy a szervernek van elsőbbsége, mindig a "szervernek van igaza", amit a kliensek látnak a világból, az mindig egy nagyon kicsit eltér a valós helyzettől, de nem baj, mivel a számítások is szerver oldalon történnek.
Ahogy Asylum leírta, úgy szerintem minden kliensen az összes többi kliens karaktere eléggé eltérő helyen lenne (lehetne), mint a szerveren, így például elég hülyén nézne ki, hogy te lősz, úgy tűnik hogy eltalálsz egy ellenfelet, de valójában meg nem, ezért nálad meghal/sebződik, szerver oldalon viszont nem, őnála meg megint más látszik.
Az a fajta megközelítés szerintem jobb, hogy a kliensek csak az input adatokat küldik el a szervernek, az számolgat amit kell, és az eredményt szétbroadcastolja az összes kliensnek. Ez az alapfelállás, erre jönnek a trükközések, pl az, hogy a kliens is számol, hogy ne legyen nagy latency mire megmozdulnak a dolgok, viszont a szervertől kapott adatokkal felülírja a saját számításainak eredményét. Így elméletileg mindig, minden kliens csak egy kicsit lesz lemaradva a valós helyzethez képest. Na, és itt jönne be a még durvább trükközés, hogy a kliens a szervertől kapott adatok alapján újra számol. Ezzel elméletileg akár 1-2 másodperces késleltetés esetén sem lenne nagyon durva a lagolás.

De mindegy, egyelőre megírom timestamp-ek nélkül, aztán majd meglátom, hogy kell-e kiegészítés. Már írtam pár egyszerű tesztet, helyi hálózaton (max 10-20 ms latency) semmi késleltetés nem látszik, gondolom neten keresztül lehetne észrevenni a lagolást.

   
Asylum - Törzstag | 5484 hsz       Online status #128771   2010.03.11 17:53 GMT+1 óra  
A lehető legnagyobb hiba amit elkövethetsz, hogy küldözgeted az időket...nincs két ugyanolyan óra a világon.

Én a következőket csinálnám:

karaktermozgás: a kliens ugy mozgatja a saját karakterét mintha egy single player játék lenne, a pozicioját pedig fix idöközönként elküldi a szervernek (nem muszáj minden frameben).
A szerver ezt elküldi a többi kliensnek, azok pedig a régi és az új pozicio között interpolálnak. Ha egy csomag elveszett, nem érdekes.

lövedék: hasonlóan mint fent, a kliens elküldi a lövedék pozicioját, a szerver az aktuális állapotok alapján megnézi, hogy eltalált-e valakit, de közben a kliens is nézi, hogy például nem ütközött-e falba a lövedék.
C++ fordítóval és macival alszom
http://darthasylum.blog.hu/
   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] > 55 < [60] [65] [70] [75] [80] [85] [90] [95] [100] [105] [110] [115] [120] [125] [130] [135] [140] [142]