Hirdetés
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Új hozzászólás Aktív témák
-
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
- PROHARDVER! feedback: bugok, problémák, ötletek
- Viccrovat
- Nintendo Switch 2
- Samsung Galaxy A56 - megbízható középszerűség
- Milyen alaplapot vegyek?
- Gyúrósok ide!
- Nők, nőügyek (18+)
- Kezünkben a Honor Magic V5
- Battlefield 6 - Bemutatkozik a többjátékos mód
- Kerékpárosok, bringások ide!
- További aktív témák...
- DELL Precision 5540 Workstation i7-9850H Nvidia Quadro T1000 16GB 512GB 15.6 új akksi 1év garancia
- Új FULL HD webkamera + Számla
- Thinkpad X230 legenda: i7 CPU, IPS kijelző, 12 GB, dupla SSD, magyar villbill, webcam, fingerprint
- MSI Z77 MPOWER Alaplap eladó
- Bomba ár! Lenovo ThinkPad L13 G3 - i5-1245U I 16GB I 256SSD I 13,3" FHD Touch I NBD Gari!
Állásajánlatok
Cég: FOTC
Város: Budapest