ZenGL/fr

From Free Pascal wiki

Deutsch (de) English (en) español (es) français (fr) русский (ru)


ZenGL | Tutoriel 1 | Tutoriel 2 | Tutoriel 3 | Edit

L'essentiel

ZenGL - bibliothèque de développement de jeu multi plate-forme, conçue pour fournir les fonctionnalités nécessaire pour le rendu des graphiques 2D, traitement des entrées, sortie sonores, etc.

OS supportés: GNU/Linux, Windows, macOS, iOS, Android 2.1+
Compilateurs supportés: FreePascal, Delphi
API Graphique: OpenGL, OpenGL ES 1.x, Direct3D 8/9
API de son: OpenAL, DirectSound
Licence: zlib

La bibliothèque est en cours de finalisation.

Liens

Tutoriel

Attention! Tous les exemples sont contenus dans la version téléchargée de la bibliothèque (dans les nouvelles versions, ils peuvent différer légèrement, mais critiques pour le travail du programme développé).

Tutoriel ZenGL : C'est le premier tutoriel pour ZenGL : téléchargement, installation, chemins des sources, compilation (statiquement ou avec so/dll/dylib) (Windows dll), et le premier programme 'Initialization' qui vient avec ZenGL.
Tutoriel ZenGL 2 : C'est le second tutoriel sur comment créer une fonte et dessiner du texte dans la fenêtre.

Caractéristiques

 * Principal
   o peut être utilisé comme so/dll/dylib ou statiquement compilé avec votre application
   o rendu en propre ("to own") ou vers toute autre fenêtre préparée
   o enregistrement ("logging")
   o chargement de ressource depuis des fichiers, la mémoire et archives zip
   o chargement de ressource multi-threadé
   o ajout facilité du support de nouveau format de ressource
 * Configuration
   o anticrénelage ("antialiasing"), résolution d'écran, taux de rafraichissement et synchronisation verticale
   o correction d'aspect
   o titre, position et taille de la fenêtre
   o visibilité du curseur dans l'espace de la fenêtre
 * Entrée
   o traitement du clavier, de la souris et de l'entrée joystick
   o traitement de l'entrée de texte Unicode
   o possibilité de restreindre l'entrée à l'alphabet latin
 * Textures
   o supporte tga, png, jpg et pvr
   o fonctionnement correct avec les textures NPOT (non puissance de 2)
   o contrôle des paramètres de filtre
   o masquage
   o cibles de rendu("render targets") pour le rendu en texture
 * Texte
   o font Unicode texturée
   o rendu de texte UTF-8
   o rendu de texte avec alignement et autres options comme la taille, la couleur et le compte de symbole ("count of symbols")
 * sous-système 2D
   o rendu différé ("batch render") pour le rendu à haute vitesse
   o rendu de différentes primitives
   o moteur de lutin ("sprite")
   o rendu de lutins et tuiles ("tiles") statiques et animé.
   o rendu de grille de distortion
   o rendu des lutins avec de nouvelles coordonnées de textures (avec la dimension de pixel et l'habituel 0..1)
   o contrôle du mode de mélange et du mode mix de couleurs ("color mix mode")
   o contrôle de la couleur et de l'alpha des sommets des lutins et primitives
   o transformations supplémentaires de lutin (flipping, zoom ("zooming"), décalage de sommets ("vertices offset"))
   o découpage ("clipping") rapide des lutins invisibles
   o caméra 2D avec possibilité de zoom et de rotation de la scène
 * Son
   o fonctionne à travers OpenAL ou DirectSound; selon la configuration et le système d'exploitation
   o marche correctement avec la carte son
   o supporte wav et ogg comme formats des échantillons sonores
   o lecture des fichiers audio dans un thread séparé
   o contrôle du volume et de la vitesse de lecture
   o déplacement des sources sonores dans l'espace 3D
 * Vidéo
   o décodage des trames vidéo dans la texture
   o supporte le codec theora dans un conteneur ogv
 * Maths
   o ensemble de base de fonctions mathématiques supplémentaires
   o fonctions de triangulation
   o ensemble de base de fonctions de collision
 * Supplément
   o lecture et écriture de fichier INI
   o fonctions pour travailler avec les fichiers et la mémoire


Dans la nouvelle version

  • Correction de la compilation pour Android pour FPC 3.2.0 et supérieur.
  • Déplacement du code principal pour corriger la bibliothèque
  • Travail édité avec Windows 64
  • Correction de bugs mineurs
  • Versions de démonstration éditées (pour iOS, les démos n'ont pas été corrigées, les versions de démonstration pour Lazarus, FPC et Delphi ont été révisées)
  • Introduit par DEFINE
    • define - USE_EXIT_ESCAPE - quitter. Possibilité de ne pas écrire de code supplémentaire pour quitter le programme en appuyant sur la touche Échap
    • define - USE_INIT_HANDLE - pour utiliser ZenGL dans une fenêtre déjà créée (LCL/VCL)
  • Prise en charge introduite pour macOS Cocoa
  • Changé: travailler avec des minuteries, travailler avec des polices, travailler avec LCL/VCL