0

Est-il possible de configurer GL_PROJECTION dans OpenGL pour compenser les rotations d'écran?Compensation de la rotation de l'écran en modifiant GL_PROJECTION dans OpenGL

Je pense qu'il y a beaucoup d'applications à cela, en réalité augmentée ou en vues stéréoscopiques, par exemple.

En particulier, je voudrais faire un "faux" changement de perspective lorsque l'appareil mobile est incliné.

Cet effet est montré dans l'image enter image description here

Répondre

0

En fait, votre cas particulier nécessite un réglage à la fois la projection et la modelview. Le modelview est responsable de la définition du point d'origine. En ayant une vue inclinée, le point de vue change. Cependant, l'objectif est également décalé (littéralement, c'est comme un objectif de changement de direction sur un vrai appareil photo), ce qui nécessite un décalage horaire. Maintenant, votre croquis n'est pas très clair sur ce que vous voulez réellement. Ce que je peux clairement dire, c'est qu'il n'est pas tourné, mais décalé. Suggestion: Télécharger Blender, configurer une scène simple et bricoler avec les paramètres "Shift" de l'objet caméra; Comme vous le verrez, vous devrez appliquer une combinaison de décalage d'objectif et de changement de caméra.

Mais généralement: Oui, le réglage de la matrice de projection est nécessaire dans certaines situations.

+0

Ok, ce que vous dites est le chemin à parcourir. En fait, la vue en perspective peut être laissée intacte, dans mon cas de toute façon, et l'effet pourrait être accompli en déplaçant la vue du modèle en conséquence, donc je devrais générer une matrice de "biais" en utilisant l'angle d'inclinaison du dispositif – rraallvv