Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. ORX — Wikipédia
ORX — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.
ORX
Description de l'image Orx-logo.svg.

Informations
Écrit en CVoir et modifier les données sur Wikidata
Type Moteur de jeuVoir et modifier les données sur Wikidata
Licence zlib license
Site web orx-project.orgVoir et modifier les données sur Wikidata

modifier - modifier le code - voir Wikidata (aide)

Orx est un moteur de jeu en open source, portable, léger, orienté 2D basé sur des plug-ins, piloté par les données (Data driven ce qui le rend facile à utiliser), et écrit en C.

Il fonctionne sous Windows (versions MinGW et Visual Studio ), Linux, MacOS, iOS et Android.

informations générales

[modifier | modifier le code]

Orx fournit un cadre de création de jeux complet comprenant un graphique de scène 3D, un rendu 2D accéléré par le matériel, des systèmes d'animation, sonore, physique et bien plus encore.

Ses principaux atouts sont de permettre le prototypage et la création rapides de jeux[1].

Orx est publié sous licence Zlib.

Historique:

L'origine d'ORX remonte à juillet 2002, réutilisant du code écrit ces dernières années par Romain Killian qui souhaitait tester de nouvelles approches (comme un graphe d'animation, désormais présent dans de nombreux moteurs majeurs, mais ORX est l'un des premiers à l'avoir proposé dans un moteur de jeu fin 2003). Il a ensuite accéléré son travail sur le moteur en 2007, toujours en essayant de faire les choses différemment (c'est à cette époque que le système de configuration et contrôle par la data a été conçu).

En 2009, la version 1.0 rc0 d'ORX est sortie. Cette version prend désormais en charge Mac OS X (x86), Win32 et Linux (x86). Des systèmes de saisie génériques tels que le clavier, la souris et le joystick, ainsi que la prise en charge des shaders de fragments, ont été introduits.

La version 1.2 d'ORX est sortie en 2010. Elle comportait des corrections de bugs et des optimisations. La principale mise à jour concernait la prise en charge d'iOS et d'Unicode.

La version 1.3rc0 d'ORX a été lancée en 2011. Elle intégrait de nombreuses nouvelles fonctionnalités, comme la prise en charge des articulations, les polices à largeur variable, OpenGL 2.0 et bien d'autres. Les problèmes et bugs antérieurs ont également été corrigés. C'était la première fois que le moteur prenait en charge Android.

La version ORX 1.4cr0 a été introduite en 2012. Certaines nouvelles fonctionnalités ont été ajoutées à ORX dans cette mise à jour, comme la console interactive, les commandes, le rendu de maillage (mesh) texturé, le rendu de géométrie et les problèmes précédemment connus ont été corrigés.

La version 1.11 d'ORX a été publiée en mai 2020 avec des modifications de prise en charge pour MinGW-w64, notamment une nouvelle prise en charge de l'affichage haute résolution 64 bits, OSX/ Retina et Windows, un contrôle sur les périphériques physiques interrogés, des animations de texte et plus encore.

La version 1.12 d'ORX est sortie en mai 2021, apportant d'importantes améliorations en termes de **vitesse et d'évolutivité**. Parmi celles-ci, on compte la gestion de **16 millions d'objets concurrents en mémoire** (contre 65 000 auparavant), une réécriture complète du module `orxBANK`, la **prise en charge des joysticks sur Android-Native, une pipeline de compilation Android simplifiée, le support de [Nuklear](https://github.com/vurtun/nuklear) pour les nouveaux projets, et bien plus encore.

La version 1.13 d'ORX est sortie en mars 2022, avec plus de 70 mises à jour ou nouvelles fonctionnalités, dont un nouveau plugin SoundSystem basé sur MiniAudio (fichiers OGG, WAV et MP3 ), prise en charge de : filtres pilotés par la configuration pour les sons et les bus, plusieurs auditeurs sonores, panoramique sonore, spatialisation sonore, prise en charge du format d'image QOI, prise en charge native d'arm64 pour MacOS 11 / XCode 12.x, etc...

La version 1.14 d'ORX est sortie en juin 2023, avec plus de 50 mises à jour et nouvelles fonctionnalités, dont une refonte de l'intégration Android avec AGDK (GameActivity, Swappy, Paddleboat). La liste des modifications apportées à cette version est disponible ici.

La version ORX 1.15 est sortie en août 2024, la liste des modifications de cette version est disponible ici.

La version 1.16 d'ORX est sortie en juin 2025. Elle comprend plus de 48 mises à jour et nouvelles fonctionnalités, dont la prise en charge des plateformes Web/HTML5, la prise en charge des polices TrueType / OpenType à l'exécution, et la prise en charge des polices SDF (soit générées hors ligne, soit à l'exécution). La prise en charge des formats QOA (audio) et PNM, GIF et PSD (bitmap) a été ajoutée. Les plugins sont désormais traités comme des ressources, et bien d'autres modifications sont également disponibles : la liste des modifications de cette version est disponible ici.

La liste complète des modifications effectuées depuis la version 1.0 peut être trouvée ici.

Caractéristiques

[modifier | modifier le code]

Bien qu'écrit en C, Orx présente une conception orientée objet avec une architecture de plugins. Cela permet à son noyau d'être multiplateforme et de déléguer les tâches dépendantes du matériel et du système d'exploitation à des plugins. La plupart de ces plugins sont basés sur d'autres bibliothèques open source, telles que GLFW, SDL et Box2D (fork de LiquidFun).

Des fichiers de build sont fournis pour les makefiles GCC, Visual Studio (2017, 2019 et 2022), Codelite, Code::Blocks et Xcode.

Orx contient la plupart des fonctionnalités courantes d'un moteur de jeu
  • rendu automatisé de sprites utilisant l'accélération matérielle 3D permettant : les translations, l'échelle anisotrope, la rotation, la transparence (mélange alpha), la coloration (mélanges de multiplication, d'addition et de soustraction), le pavage et la mise en miroir
  • gestion avancée des ressources
  • Cibles de rendu multiples (MRT) et prise en charge avancée de la composition
  • primitives d'affichage géométrique et rendu de maillage texturé
  • système de caméra/vue d'ensemble permettant plusieurs vues sur un seul écran avec translations, zooms et rotations de caméra
  • Graphique de scène 3D utilisé pour le positionnement des objets, permettant des translations, des rotations et des échelles groupées
  • son et musique avec contrôle du volume, de la hauteur et de la boucle, spatialisation, bus hiérarchiques, filtres, enregistrement, etc.
  • Moteur physique 2D ( LiquidFun - fork de Box2D )
  • détection de collision et physique des corps rigides et articulations
  • système d'animation
  • gestion d'événements
  • prise en charge du shader de fragment personnalisé (pixel)
  • prise en charge Unicode
  • rendu de police bitmap personnalisé
  • profileur de processeur en temps réel
  • console de débogage interactive
  • prise en charge multi-écrans
  • prise en charge du presse-papiers
Il offre également des fonctionnalités plus inhabituelles, comme: [2]
  • la création d'objets est pilotée par les données : la gestion des ressources nécessite très peu de code, tout est contrôlé via des fichiers de configuration
  • pendant les phases de développement, les ressources peuvent être automatiquement chargées à chaud au moment de l'exécution lors de la modification sur le disque, réduisant ainsi considérablement les temps d'itération
  • Cela permet à l'utilisateur de maintenir une cohérence temporelle partout, lui donnant la capacité d'effectuer une dilatation/étirement temporelle locale ou globale.
  • un graphe de chaînage d'animation : les transitions d'animation sont définies dans un graphe, cela permet au code de demander uniquement l'animation cible finale ; toutes les transitions seront automatisées en fonction de l'animation de départ
  • un système d'événements d'animation personnalisé : permet une synchronisation facile avec des parties d'animations
  • un système d'effets visuels : combinaison basée sur la configuration de courbes de formes sinusoïdales, en dents de scie et linéaires qui peuvent être connectées aux propriétés de l'objet : couleur, alpha, position, translation ou rotation
  • Un système de configuration puissant: Ce système offre l'héritage, le contrôle aléatoire direct, le chiffrement/déchiffrement, la sauvegarde filtrée et le rechargement de l'historique. Cela permet à l'utilisateur de peaufiner presque tout sans avoir à modifier une seule ligne de code.
  • un défilement différentiel automatisé : la mise à l'échelle de la profondeur et le défilement différentiel sont contrôlés via des fichiers de configuration, permettant un défilement de parallaxe différentiel sur n'importe quel nombre de plans
  • Un système de configuration performant : héritage, contrôle aléatoire direct, chiffrement/déchiffrement, sauvegarde filtrée et rechargement de l'historique. Cela permet à l'utilisateur de modifier quasiment tout sans avoir à modifier une seule ligne de code.
  • un système de spawning : cela permet à l'utilisateur de créer facilement des balles d'armes ou, combiné au système d'effets visuels, d'élaborer des effets graphiques visuels
  • un système de positionnement d'objets d'interface utilisateur simple : permet de prendre en charge différents rapports hauteur/largeur et fournit un cadre de sélection facile
  • Un système de saisie générique : permet aux utilisateurs d'utiliser tout type de contrôleur (souris, joystick, clavier, écran tactile, accéléromètre, etc.) via une couche abstraite. L'utilisateur demande l'état des entrées à l'aide de noms simples, les liaisons étant effectuées dans les fichiers de configuration ou à la volée pour personnaliser les entrées utilisateur, par exemple.
  • script simple via une combinaison de chronologies et de commandes
  • prise en charge multithread avec chargement asynchrone des ressources et prise en charge du chargement à chaud


    Modèle:Portail Free and open-source software Modèle:Portail Video games
  • Moteur de jeu
  • Liste des moteurs de jeu
  • SFML
  • SDL
  • Box2D
  • GP2X
  • Codelite

Références

[modifier | modifier le code]

Liens externes

[modifier | modifier le code]
  • Site du projet Orx
  • Dépôt Git sur GitHub.com
  • Dépôt Mercurial sur SourceForge.net
  • Wiki Orx
  1. ↑ « How to Learn Orx », 27 novembre 2013
  2. ↑ « ORX News »
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=ORX&oldid=227474151 ».
Catégories :
  • Logiciel écrit en C
  • Logiciel libre sous licence Zlib
  • Programmation informatique
  • Moteur de jeu vidéo
  • Logiciel libre
Catégories cachées :
  • Page utilisant P277
  • Logiciel catégorisé automatiquement par langage d'écriture
  • Page utilisant P31
  • Page utilisant P856
  • Article utilisant une Infobox
  • Pages avec des traductions non relues

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id