Új hozzászólás Aktív témák
-
mlacimk
csendes tag
Először is kösz a választ!
Azóta már én is eljutottam a glReadPixels-es módszerig, de sajnos ezzel is van egy kis gondom. Méghozzá az, hogy nem minden alkalommal olvassa ki jól a mélységet, vagyis kb. minden 4-5. alkalommal csupa 0-t ad vissza ugyanarra a pozícióra...
A glTranslate-ben pedig azért 0-t adok z-nek, mert a z=0 síkon mozgatok.
Majd próbálkozom, de ha lenne valami ötleted, azt is szívesen fogadom
Üdv:
Laci -
mlacimk
csendes tag
Sziasztok!
Egy olyan problémám lenne, hogy egy "léghoki" játékot írok opengl-ben és az ütő kirajzolásához a koordinátákat az egér helyzetéből veszem gluUnProject-el, azonban nem a jó koordinátákat kapom. A játékban az asztal körül a szobában is lehet "sétálni", amire gluLookAt-et használok. Séta módban az irányítás egérrel és billentyűzettel történik, játék módban pedig, az aktuális helyről, ahová sétáltam a szobában, onnan kell az egérrel mozgatni az asztalon az ütűt.
Íme a kód kicsit leegyszerűsítve://Itt kezdődik a display...
gl.glClearColor(0.0f, 0.0f, 0.0f, 1);
gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
gl.glMatrixMode(GL.GL_MODELVIEW);
gl.glLoadIdentity();
glu.gluLookAt(eyex, eyey, eyez, centerx, centery, centerz, 0.0f, 0.0f, 1.0f);
szobaKirajzol(gl); //Szoba kirajzolás
asztalKirajzol(gl); //Asztal kirajzolása
if(mod == 1) { //a séta/játék mód eldöntése...
gl.glGetDoublev(GL.GL_PROJECTION_MATRIX, projmatrix, 0);
gl.glGetDoublev(GL.GL_MODELVIEW_MATRIX, mvmatrix, 0);
gl.glGetIntegerv(GL.GL_VIEWPORT, viewport, 0);
realy = viewport[3] - (int) y_eger - 1;
glu.gluUnProject((double) x_eger, (double) realy, 0.0f,
mvmatrix, 0,
projmatrix, 0,
viewport, 0,
wcoord, 0);
x_koord = (float)(wcoord[0]);
y_koord = (float)(wcoord[1]);
gl.glPushMatrix();
gl.glTranslatef(x_koord, y_koord, 0); //ütő a megkapott pozícióba rajzolása
utoKirajzol(gl);
gl.glPopMatrix();
}
gl.glFlush(); //vége...A kérdésem az, hogy mit rontottam el, hogy nem a jó koordinátákat kapom, illetve, hogy, ha men ezzel a módszerrel kell megcsinálni, akkor hogyan?
Előre is kösz a válaszokat!
Üdv:
Laci
Új hozzászólás Aktív témák
- Lenovo ThinkPad T14 Gen 1 i5-10210 / 16GB RAM/ 256GB NVMe SSD világítós EU bill, kiváló állapotban
- vizes GAMER PC - RYZEN 5 7600X / 32GB DDR5 / RTX 5070 12GB
- HP EliteBook 840 G7 i5-10210U / 16GB RAM / 256GB SSD Szép állapot, EU bill, gyári töltő
- A KINCS ! Új HP EliteBook 860 G10 Profi Fémházas Laptop -50% 16" i7-1355U 32/1TB FHD+ IPS MATT
- Dobozos DELL Inspiron 16 Fémházas Multimédiás Laptop 16" -30% Ryzen 7 8840U 8mag 16/1TB FHD+ IPS
- Apple iMac 24" Blue! M3 / 16GB RAM / 512GB SSD!
- Azonnali készpénzes AMD Radeon RX 7000 sorozat videokártya felvásárlás személyesen/csomagküldéssel
- szinteÚJ Dell 15 i7 1355U 32GB 1TB 120Hz!!!!!!
- Samsung Galaxy S21 független 8/128 akku:96% ÚJSZERŰ
- Lenovo ThinkPad T14 Gen1 Intel i5-10310U Refurbished - Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

