Hirdetés
- Utcakép banánnal: félrecsúszhat a Google Térkép fókusza
- ARM-os meglepetéskiadást kap az év első felében a Windows 11
- Hírértékűvé tette a Lenovo, hogy az ASUS támogatja a kézikonzolját
- Mobilhálózatokra szabott EPYC-kel ugrik az 5G-s homokozóba az AMD
- Kiemelt figyelmet fordít a biztonságra az MSI szélsebes SSD-je
Új hozzászólás Aktív témák
-
trisztan94
őstag
Van egy sprite-om ami 300px széles, és ki kellene tölteni egy 800px széles window-t. Hogy lehet ezt a legkönnyebben megoldani?
Én így oldottam meg, de szerintem ez így baromi teljesítmény zabáló (folyton változtatgatni a sprite helyzetét..)
Render() metódus [libgdx]: (A create() metódusban van megadva az alap pozíciója, ami 0,-5)
batch.begin();
grassSprite1.draw(batch);
grassSprite2.draw(batch);
grassSprite3.draw(batch);
grassSprite1.setPosition(280, -5);
grassSprite2.setPosition(280, -5);
grassSprite3.setPosition(280, -5);
grassSprite1.draw(batch);
grassSprite2.draw(batch);
grassSprite3.draw(batch);
grassSprite1.setPosition(570, -5);
grassSprite2.setPosition(570, -5);
grassSprite3.setPosition(570, -5);
grassSprite1.draw(batch);
grassSprite2.draw(batch);
grassSprite3.draw(batch);
grassSprite1.setPosition(0, -5);
grassSprite2.setPosition(0, -5);
grassSprite3.setPosition(0, -5);
batch.end();Azért van 3 grassSprite, mert három különböző "layer"-en vannak. Innen csórtam.
Szerk: ha széthúzom a sprite-okat 800px szélesre akkor sajna nagyon romlik a minőségük, ezért kell ez a "duplikálás" (mi erre a helyes magyar szó?
)Más (hunfatal) :
Úgy oldottam meg végül az ütközés utáni body törlést, hogy létre hoztam egy array-t (deleteBodies), oda hozzáadtam a contactlistenerben a body-t amit törölni kell (A fixture-ökből szedtem ki a getBody() fgv-el), majd a render metódus elején (tehát a contactlisteneren kívül) töröltem. Így nincs külön osztályban, de működik.
Mit gondol(tok)sz? jó lesz így?
kaud:
ContactListenerben:dropDeletionList.add(fixtureA.getBody());
A render metódus elején:
if(dropDeletionList.size > 0){
Iterator<Body> iter2 = dropDeletionList.iterator();
Iterator<Body> iter = raindrops.iterator();
while (iter2.hasNext()){
Body dropToDel = iter2.next();
while(iter.hasNext()){
Body drop = iter.next();
if(drop.equals(dropToDel)){
iter.remove();
world.destroyBody(dropToDel);
}
}
}
dropDeletionList.clear();
}A raindrops array iterátora azért kell, hogy ne csak a body-t törölje ki, hanem a hozzá tartozó textúrát is.
Új hozzászólás Aktív témák
- Fotók, videók mobillal
- sziku69: Fűzzük össze a szavakat :)
- Vezeték nélküli fülhallgatók
- Apple MacBook
- Android szakmai topik
- Depression: Hardver rúzs effektus?
- Motoros topic
- Google Pixel topik
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- Samsung Galaxy A16 / 4/128GB / Kártyafüggetlen / 12Hó Garancia
- Asus 15 TUF Gamer FHD IPS 144Hz G-Sync Ryzen7 7735HS 16GB 1TB SSD Nvidia RTX4060 140W Win11 Garancia
- iPhone 17 256 GB Levander - Bontatlan !! www.stylebolt.hu - Apple eszközök és tartozékok - Számlás
- Bomba ár! HP Elitebook 850 G3 - i5-6GEN I 8GB I 256GB SSD I 15,6" FULL HD I Cam I W10 I Gari!
- ÁRGARANCIA!Épített KomPhone i5 14600KF 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
)
