Zerrac Posted February 10, 2010 Share Posted February 10, 2010 Bonjour à tous. J'ai besoin de récupérer la position à l'écran d'un point dans l'espace 3D (pour pouvoir sélectionner des tiles dans l'éditeur de mon jeu). J'ai essayé de récupérer la matrice de projection comme ceci: gl.glMatrixMode(GL10.GL_PROJECTION); gl.glLoadIdentity(); float xmax = (float)Math.tan(mCameraFOV*0.5f)*mNearClippingPlane; float ymax = xmax * mScreenHeight/mScreenWidth; gl.glFrustumf(-xmax,xmax,-ymax,ymax,mNearClippingPlane,mFarClippingPlane); if (gl instanceof GL11) { ((GL11)gl).glGetFixedv(GL11.GL_PROJECTION_MATRIX, mProjectionMatrix.mCoefs, 0); } (mProjectionMatrix.mCoefs est un int[16]) Mes coefficients ne sont pas modifiés, alors que je passe bien dans glGetFixedv?? Comment faire pour récupérer cette matrice? Link to comment Share on other sites More sharing options...
Zerrac Posted February 22, 2010 Author Share Posted February 22, 2010 Vous aussi vous séchez? Bon, finalement j'ai fait autrement, j'ai calculé un vecteur direction en fonction de mon plan de clipping et de la position de ma caméra, et j'ai fait des calculs de projection sur mes objets pour savoir lequel est sélectionné. Plus bourrin, plus compliqué aussi niveau calculs, mais au moins ça fonctionne. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.