Kezdőoldal » Számítástechnika » Programozás » Hogy lehet jelentősen gyorsíta...

Hogy lehet jelentősen gyorsítani egy javascript kód futásán?

Figyelt kérdés

Egy játékot próbálok készíteni, melyben jelenlegi állás szerint a karakter mozgatásáért egy "setInterval" függvény felel, ami mindig csak egy pixellel helyezi arrébb az objektumot, és hiába állítom 0-ra az időközt, egy bizonyos (nem túl nagy) sebesség fölé így sem tudok menni. Van erre valami külön beállítás? Hardveres gyorsítás, vagy hasonló?



Ha már témánál vagyunk, van még egy kérdésem:

A setInterval-t le tudom-e cserélni valami más megoldásra, ahol nem a két futtatás közti szünetet, hanem az ismételt indítások közti időközt tudom beállítani? (fontos lenne ugye, hogy pontosan az általam megszabott sebességgel mozogjon a karakter)



egyéb info:

ez egy kétszemélyes online játék lesz, úgyhogy ajax segítségével fogom megoldani a szinkronizációt


2016. júl. 26. 00:54
 1/3 anonim ***** válasza:
100%
Bocsi, hogy nem a kérdésre válaszolok de az ajaxot már most felejtsd el, ehhez socket kapcsolat kell, phpval is lehetséges és egyszerű websocketekhez szervert csinálni. Ajax esetén még long pollinggal is nagyon megterhelő lenne a majdnem valós idejű szinkronizacio.
2016. júl. 26. 08:54
Hasznos számodra ez a válasz?
 2/3 anonim ***** válasza:

Nem kell minden pixelnyi elmozdulást kirajzolnod, válaszd szét a mozgás vezérlését (a koordinátákat tároló változók frissítését) és a kirajzolást.

Az elsőt csinálhatod gyakrabban, a másodikat viszont felesleges minden egyes elmozdulásnál meghívni.

2016. júl. 26. 11:00
Hasznos számodra ez a válasz?
 3/3 A kérdező kommentje:

köszi

az az igazság, hogy ajaxot sem használtam soha, csak utánaolvastam... mindent használat közben tanulok meg



a kérdésre már megvan a válasz: utánaolvastam, és rájöttem, hogy a setInterval mégiscsak az indítások közt eltelt időt állítja be, és, hogy a böngészők 3-5ms alá nem tudják vinni ezt az időtartamot, szóval a fix sebesség érdekében mégiscsak megnöveltem az időközöket, és nagyobb léptéket állítottam be

2016. júl. 26. 17:17

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!