Je rends un cube avec 8 sommets. Au fur et à mesure que je tourne ou que je me rapproche du cube, certains sommets peuvent être écrêtés par le plan de coupure proche. Cependant, pour une raison quelconque dans mon problème, j'ai besoin de trouver les points d'intersection sur les bords du cube avec le plan de coupure proche. Je sais que le nombre de points peut varier. Donc, ce que je pensais obtenir le plan de coupure proche (probablement dans l'espace oculaire - mais COMMENT?) Et faire un calcul inverse des matrices pour obtenir les coordonnées dans l'espace objet de mon cube, alors je peux trouver les intersections et résoudre mon problème. Mais le problème ici est:comment obtenir les coordonnées du plan de découpage proche dans la coordonnée d'espace objet dans OpenGL
- Comment obtenir les coordonnées pour chaque coin du plan de coupure proche? (ou les coefficients de l'équation plane)
- Comment revenir à l'espace objet?
Test:
Comme un test pour voir si je peux obtenir les coordonnées correctement j'essayé: Ce que j'ai essayé de faire était d'obtenir l'inverse de MVM (MODELVIEW Matrix) et PM (Projection Matrice). Et essayé d'imaginer le plan de coupure proche ayant V1 = (-1, -1, -1,1), V2 = (1, -1, -1, 1), V3 = (1, 1, -1, 1) , et V4 = (-1, 1, -1, 1) coordonnées. Donc, je pensais si je fais cela pour chacun des quatre sommets:
V1 = IMVM * (IPM * V1);
V2 = IMVM * (IPM * V2);
V3 = IMVM * (IPM * V3);
V4 = IMVM * (IPM * V4); Où IMVM est l'inverse de la matrice modèle-vue et IPM est l'inverse de la matrice de projection. Puis moi quand je rends ces quatre points avec des matrices actuellement chargées (que j'ai juste utilisé l'inverse de), je devrais avoir un carré debout devant mon écran puisque mes multiplications inverses auraient dû être annulées par la multiplication avec openGL actuellement chargé matrices. Mais pour une raison quelconque cela ne marche pas et j'ai essayé de le transposer et normal. J'ai fait attention à être colonne major, etc. Mais il semble que ça ne marche pas et au lieu d'obtenir un suqare (représentant mon plan de coupure proche) je reçois un avion qui bouge constamment et saute partout !!
http://www.scratchapixel.com/lessons/3d-basic-rendering/computing-pixel-coordinates-of-3d-point – user18490