Ma scène OpenGL contient des objets qui sont positionnés à des distances ridiculement éloignées de l'origine. Lorsque je regarde ces objets et que je fais un panoramique / rotation / zoom d'une caméra autour d'eux, ils «tremblent». Autrement dit, les sommets comprenant les objets semblent se casser autour d'une grille de points 3D imaginaire. J'ai lu que c'est un problème courant en raison de la quantité d'informations qui peuvent être stockées en utilisant la précision en virgule flottante (qu'OpenGL, et à peu près tout le reste utilise). Je ne comprends pas pourquoi cela se produit cependant.
Lors de la recherche d'une solution, je suis tombé sur le très simple correctif «origine flottante», et il semble fonctionner. Je transforme simplement tout pour que mes objets soient dans les mêmes positions relatives mais tout ce que mon appareil photo regarde est proche de l'origine. J'ai trouvé une explication ici: http://floatingorigin.com/ , mais je n'ai pas pu la suivre.
Alors ... Quelqu'un pourrait-il expliquer pourquoi le fait de positionner ma scène très loin (disons 10 millions d'unités) de l'origine entraîne le comportement erratique que j'ai observé? Et aussi pourquoi le déplacer près de l'origine résout le problème?