Qu'est-ce qu'une animation OpenGL®?
Animation OpenGL® est un terme général qui s'applique à toute scène dans laquelle des objets se déplacent et est rendue à l'aide des bibliothèques OpenGL®. Du point de vue de la programmation, plusieurs méthodes peuvent être utilisées pour créer une animation OpenGL®. Dans une vue davantage graphique, une animation OpenGL® peut être toute séquence animée rendue avec OpenGL®, que la scène ait été générée dans le code source du programme ou dans un programme de modélisation autonome. Plusieurs types d’animations peuvent être réalisés avec OpenGL® et d’autres bibliothèques de support, mais deux des plus utilisées sont l’animation par images clés et l’animation squelettique.
Le type le plus élémentaire d’animation OpenGL® consiste simplement à déplacer un objet dans une scène. Cela se fait généralement en modifiant l'emplacement de chacune des coordonnées du sommet de manière égale, en les traduisant lentement vers la position souhaitée. La position de la caméra dans une scène peut également être modifiée pour créer un effet d'animation, bien que la scène entière reste statique dans ce cas. Cette forme d'animation de base est fréquemment utilisée dans les programmes bidimensionnels (2D) dans lesquels les objets ne sont que des espaces réservés permettant d'afficher des textures.
L'animation par images clés est un processus beaucoup plus complexe. Cette forme d'animation OpenGL® implique de prendre un modèle chargé dans la scène et de le déplacer progressivement vers une autre position, appelée image clé. Un exemple est un modèle de main agitant. La position initiale de la main est comparée à un autre modèle, ou image clé, d'animation dans lequel la main est complètement étendue. La moyenne et le mouvement incrémentiel de la main créent l'animation sans qu'il soit nécessaire de stocker la position de la main dans chaque incrément le long du trajet.
Un autre type d'animation OpenGL® est appelé animation squelettique. Cela implique la création d'un modèle, généralement constitué d'un humain ou d'un animal articulé, puis la création d'un type de structure osseuse à l'intérieur du modèle. Chacun des os est attaché, virtuellement, aux sommets environnants du modèle. Les os exercent une certaine force ou poids sur chaque sommet, de sorte que lorsque l'os est lui-même déplacé, le modèle environnant réagit et le maillage qui constitue la "peau" du modèle se déforme. Ce type d’animation prend du temps à créer, mais peut fournir des mouvements très réalistes s’il est effectué correctement.
Une animation OpenGL® s'appuie à la fois sur le modèle créé pour être animé et sur la manière dont un programme effectue l'animation. La méthode la plus utilisée consiste à rendre les images de l'animation dans une zone hors écran appelée tampon avant d'être dessinée sur l'écran visible. Cela permet de dessiner l'image dans son intégralité sans que l'utilisateur ait à la regarder si elle est trop lente. De nombreux programmes informatiques qui utilisent l'animation OpenGL® doivent également s'assurer de maintenir une cadence d'images constante pour éviter les animations instables, ce qui est accompli en chronométrant chaque image dessinée et en attendant ou en accélérant le processus de rendu.