Hirdetés
- Google Pixel topik
- Xiaomi 17 Ultra - jó az optikája
- Milyen hagyományos (nem okos-) telefont vegyek?
- Így lehet kiszúrni, ha kamu AirPods fülest akarnak eladni neked
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Samsung Galaxy Z Fold4 - egyre megy, honnan nézed
- iPhone topik
- Megnyerné a Motorola a furcsa mobilnevek bajnokságát
- Samsung Galaxy Watch6 Classic - tekerd!
- Elkalapálta a snapdragonos Galaxy S26 az exynososat
Ú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
- Kingston 2TB KC3000 NVMe SSD - Garanciális
- Kingston FURY 32GB (2x16GB KF560C36BBEK2-32) DDR5-6000 CL36 - Garanciális
- S. Mario PC! Hogy fusson a Super Mario! I5 14400F / RX 6900XT 16GB / 32GB DDR5 / 1TB SSD
- XFX Radeon 7900GRE 16GB - garanciális
- Truecam M5 GPS WiFi autós menetrögzítő kamera + CPL Polarizációs szűrő + 64Gb Endurance kártya
- Apple iPhone 11 128GB Új kijelző Új akku! 12hó jótállás
- Dell Latitude 5430 14" Touchscreen i5-1235U 16GB 512GB 1 év garancia
- szinteÚJ Lenovo ThinkPad L14 Gen5 i7 155U 16GB 1TB FHD+
- iPhone 15 Plus 256GB 100% (1év Garancia) - ÚJ EREDETI AKKUMULÁTOR
- 153 - Lenovo LOQ (15IRX9) - Intel Core i5-13450HX, RTX 4060 (ELKELT)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
)
