Mes programmes OpenSource
Pour une offre professionnelle, consultez mon site http://www.execute.re.OpenGL - Projets OpenGL
Intro InsideGL SpotLight DCal3D DCal3D VCL 3DStudio 3DObject ProgMesh Lightmaps gluTess Picking shuttle Ani8tor Fock3D
Intro Introduction à OpenGL
Ma page Kylix présente quelques exemples basés sur ma MiniGL.
Cette nouvelle partie de mon site propose des exemples d'utilisation d'une nouvelle série de composant OpenGL :
OpenGL est une API portable de graphisque en 3D :
- OpenGL est le niveau le plus bas, il gère directement la carte vidéo
- GLU est une bibliothèque de fonctions qui s'appuient sur OpenGL (création de sphères, cylindres...)
- GLUT encapsule les API spécifiques au système d'exploitation (création de fenêtre...)
Ma page Kylix présente quelques exemples basés sur ma MiniGL.
Cette nouvelle partie de mon site propose des exemples d'utilisation d'une nouvelle série de composant OpenGL :
DelphiGL.PAS est encore une nouvelle Unité d'interface pour OpenGL, celle-ci n'est pas mieux que les moultes autres disponibles un peu partout sur internet, mais elle est basée sur quelques principes : 1- Seules les fonctions dont j'ai eu besoin sont implémentée. 2- Les types standard de Delphi sont utilisés en lieu est place des moultes type OpenGL (GLFloat=single, GLInt=integer...) 3- les constantes OpenGL sont triées par ordre numérique croissant, j'ai en effet constaté qu'il était à peu près impossible de regrouper ces constantes de façon intelligente. GL_TEXTURE_2D par exemple est utilisée en 3 endroits différents pour des fonctions différentes. Les constantes de même nature ont des valeurs totalement indépendantes. Finalement l'ordre numérique permet de repérer facilement les "trous" dans la liste des constantes ;) 4- les fonctions sont déclarées par ordre alphabétique. 5- l'unité couvre aussi bien OpenGL que GLU et GLUT (dans les limites du point n°1) 6- les fonctions GLU/GLUT simples sont implémentée en Pascal d'après le source de Mesa. WinGL.PAS cette unité NE veut PAS créer un modèle objet indépendant d'OpenGL, mais simplement une présentation RAD des fonctions OpenGL. Ansi TWinGL propose la pluspart des options OpenGL traditionnellement utilisée sous forme de propriétés modifiable dans l'IDE. l'évènement OnCreateGL doit contenir le code d'initialisation OpenGL (il est déclenché à la création du contexte OpenGL) l'évènement OnPaint doit contenir le code effectuant le rendu; si GLMode=glAuto, les buffers sont déjà effacés, et on peut passer directement à glBegin()...après l'évènement TWinGL se charge du SwapBuffer(). Il sagit donc simplement d'une automatisation des fonctions OpenGL, vous devez malgré tout connaitre l'API OpenGL pour utiliser ces composants ;) TGLTex crée un Texture à partir d'un BMP ou d'un PCX. TGLLight gère les fonctions liées à GL_LIGHTi, voir le code démo.