Ezt hogy oldják meg a játékoknál? ASCII alapúaknál is lehetne ugyan úgy?
Én eddig amit láttam ASCII grafikás, konzolablakos játékot, vagy írtam valami egyszerűbbet, ott úgy oldott meg, hogy a program ne csak egyszer fusson végig majd kikapcs, hogy az egész egy ciklusban volt, ha mozog valami, ha kirajzol valamit, a változó kordinátákkal mindennel együtt.
De most akkor egy komolyabb játéknál is az egész egy ismétlődés? Amiben úgy mint, az ASCII játékoknál leginkább az egyes elemek koordinátái, értékei változnak, miközben egy nagy ciklus fut újra meg újra? Vagy ott valahogy máshogy oldják meg? Jó lenne megtudni, a googleben meg nem nagyon találtam infót.
Nem kell bezárni az egészet egy nagy ciklusba. Például ha akkor van vége egy pályának ha elért egy bizonyos pontra akkor az is elég ha egy függvény figyeli a koordinátákat és feltétel teljesülés esetén kiléptet (véget ér a pálya).
A programtözs elején meghívod a függvényt és kész nem kell egymásba ágyazni ész nélkül a ciklusokat. Egy bizonyos mennyiség felett meg már egyenesen problémás lehet.
Attól, hogy ciklusban fut valami, még nem lesz "ismétlődés". Egy 3D-s játék is általában ciklussal van megoldva, minden egyes lefutás esetén:
o lekérdezi az előző "lépés" óta eltelt időt
o ennek megfelelően módosítja a világot
-mozgatja és animálja az objektumokat
-lekezeli az esetleges ütközéseket, és úgy általában: alkalmazza a fizikát
-alkalmazza az egyéb törvényeket (pl visszaszámlálás...)
o kirajzolja a (módosított) modellt
Lehet, hogy leírva elég egyszerűnek tűnik, de az ördög mindig a részletekben rejtőzik:)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!