Article de reference

Godot (moteur de jeu)

"},"ver layout":{"wt":"simple"},"latest_release_version":{"wt":"{{wikidata|property|reference|edit|Q16972633|P348|P548=Q2804309}}"},"latest_release_date":{"wt":"{{start date and...

DIEU -oh,GOH ( prononcé moteur de jeu source .Initialement développé àBuenos Aires développeursargentinsJuan LinietskyetArielManzur pour plusieurs entreprises d'Amérique latine,il a été rendu public en 2014 Son environnement de développement est compatible avec de nombreuses plateformes et permet l'exportation vers d'autres. Il est conçu pour créer2Det3DdestinésPC,mobiles,web,de réalitévirtuelle,augmentéeet,et peut également servir au développementde logiciels.

aux développeurs de jeux vidéo de créer des jeux 3D et 2D en utilisant plusieurs langages de programmation, tels que C++ , C# , Python et GDScript. Il utilise une hiérarchie de nœuds pour faciliter le développement. Des classes peuvent être dérivées d'un type de nœud pour créer des types de nœuds plus spécialisés qui héritent de comportements spécifiques. Les nœuds sont organisés en « scènes », qui sont des groupes de nœuds réutilisables, instanciables , héritables et imbriquables. Les nœuds sont connectés par des signaux, qui peuvent transmettre des objets de données. Toutes les ressources du jeu, y compris les scripts et les éléments graphiques, sont enregistrées dans le système de fichiers de l'ordinateur (et non dans une base de données ). Cette solution de stockage vise à faciliter la collaboration entre les équipes de développement de jeux utilisant des systèmes de contrôle de version .

Ce moteur permet aux développeurs de créer des jeux 2D et 3D pour ordinateurs, appareils mobiles, navigateurs et consoles sans frais de licence. Il a bénéficié de mises à jour, notamment un moteur de rendu par lancer de rayons pour les graphismes 3D, améliorant ainsi ses capacités de rendu réaliste. Il intègre la programmation visuelle, le déploiement multiplateforme et la réalité virtuelle.

Plateformes prises en charge

Le moteur prend en charge le déploiement sur plusieurs plateformes et permet de spécifier les paramètres de compression et de résolution des textures pour chaque plateforme. Le site web ne fournit que les fichiers binaires pour les plateformes de l'éditeur ; l'exportation des projets vers d'autres plateformes s'effectue directement dans l'éditeur Godot.

L'éditeur Godot, utilisé pour créer des jeux Godot, prend en charge les plateformes suivantes :

Les jeux créés peuvent être exportés pour fonctionner sur les plateformes suivantes :

Le moteur Godot peut être exécuté sur consoles , bien que les consoles populaires ne soient pas officiellement prises en charge, car elles ne sont pas compatibles avec la licence open source du moteur . Le portage des jeux sur consoles est possible grâce à des sociétés tierces, notamment W4 Games, une entreprise commerciale fondée par des développeurs de Godot. Concernant les architectures CPU , Godot prend officiellement en charge x86 sur toutes les plateformes de bureau (en 32 et 64 bits , le cas échéant) et offre une prise en charge officielle d'ARM sur macOS, Linux, les plateformes mobiles et les plateformes Meta autonomes (en 32 et 64 bits, le cas échéant).

Godot prend également en charge un portage XR mobile pour les appareils Meta Quest fonctionnant sous Horizon OS , permettant aux développeurs de créer des applications immersives directement sur le casque sans utiliser d'ordinateur traditionnel.

Scripting

Capture d'écran de l'édition d'un fichier GDScript à l'aide de l'éditeur de scripts intégré à Godot 4.6

Godot prend en charge divers langages de programmation pour la création de jeux, notamment le langage intégré GDScript, C++ et C# . De plus, le moteur inclut GDNative (GDExtension depuis Godot 4.x), un outil permettant de créer des liaisons avec d'autres langages. Les langages officiellement pris en charge par GDNative/GDExtension incluent C et C++ . Parmi les langages pris en charge par la communauté, on trouve Rust , Nim , Swift et JavaScript . La programmation visuelle était initialement prise en charge par le langage intégré VisualScript, conçu comme un équivalent visuel de GDScript. VisualScript a été retiré du moteur principal dans Godot 4.0. Les jeux Godot exécutés dans le navigateur peuvent interagir avec le code JavaScript du navigateur .

L'éditeur Godot comprend un éditeur de texte avec indentation automatique , coloration syntaxique , complétion et pliage de code . Il intègre également un débogueur permettant de définir des points d'arrêt et d'exécuter le programme pas à pas .

GDScript

Godot possède son propre langage de script intégré , GDScript, un langage de programmation de haut niveau à typage progressif dont la syntaxe est similaire à celle de Python . Contrairement à Python, GDScript est optimisé pour l'architecture par scènes de Godot et permet de spécifier un typage strict des variables . Les développeurs de Godot ont indiqué avoir testé de nombreux langages de script tiers alternatifs, tels que Lua , Python et Squirrel, avant de conclure que l'utilisation d'un langage personnalisé offrait une optimisation et une intégration à l'éditeur supérieures.

GDScript est un langage de script en constante évolution , et des modifications et ajouts y ont été implémentés pour chaque nouvelle version majeure de Godot. Les tableaux et dictionnaires typés ont été ajoutés respectivement dans les versions 4.0 et 4.4. Les types statiques optionnels permettent au backend C++ d'appliquer des optimisations qui se traduisent par des performances nettement supérieures ; il a été observé que GDScript statiquement typé s'exécute plus de 40 % plus rapidement dans les versions de production.

Un simple programme « Hello world » peut s'écrire comme ceci :

)

Une variable simple, à typage dynamique ou statique, peut s'écrire comme suit :

constante peut s'écrire comme suit :

suite de Fibonacci :

void: var nterms: int = 5 print(\"Fibonacci sequence:\") for i: int in range(nterms): print(fibonacci(i)) func fibonacci(n: int) -> int: if n <= 1: return n else: return fibonacci(n - 1) + fibonacci(n - 2) "
func _ready () -> void : var nterms : int = 5 print ( "Suite de Fibonacci : " ) for i : int in range ( nterms ): print ( fibonacci ( i ))fonction fibonacci ( n : int ) -> int : si n <= 1 : retourner n sinon : retourner fibonacci ( n - 1 ) + fibonacci ( n - 2 )

Rendu

Le moteur graphique de Godot 3.x utilise OpenGL ES ou Vulkan ( pris en charge dans les versions plus récentes) ; Metal est également compatible avec les plateformes Apple. Ce moteur prend en charge le normal mapping , la spécularité , les ombres dynamiques via des shadow maps , l'illumination globale (fixe et dynamique) et les effets de post-traitement plein écran tels que le bloom , la profondeur de champ , le rendu HDR et la correction gamma . Un langage de shaders simplifié , similaire à GLSL , est également intégré. Les shaders peuvent être utilisés pour les matériaux et le post-traitement . Ils peuvent aussi être créés en manipulant des nœuds dans un éditeur visuel.

Godot intègre également un moteur graphique 2D distinct , indépendant du moteur 3D Les deux peuvent toutefois fonctionner simultanément sur le même écran, permettant ainsi des combinaisons complexes entre 2D et 3D. Le moteur 2D prend en charge des fonctionnalités telles que les lumières, les ombres, les shaders , les ensembles de tuiles , le défilement parallaxe , les polygones , les animations , la physique et les particules. Il est également possible de combiner 2D et 3D à l'aide d'un nœud de type « viewport ».

Pour prendre en charge l' interface utilisateur et les ressources graphiques vectorielles 2D , Godot a intégré une bibliothèque tierce, ThorVG .

Autres fonctionnalités

Godot intègre un système d'animation avec une interface graphique pour l'animation squelettique , le blending, les arbres d'animation, le morphing et les cinématiques en temps réel . Godot possède son propre moteur physique et, depuis la version 4.x, permet aux développeurs tiers d'intégrer leur propre moteur physique via GDExtension. Dans Godot 3.x, le moteur physique Bullet est inclus et utilisé par défaut. Avec Godot 4.4, le moteur physique Jolt a été ajouté, mais n'a été utilisé comme moteur par défaut qu'à partir de la version 4.6.

Ce moteur a été utilisé dans des contextes éducatifs et par des développeurs indépendants en raison de sa licence gratuite et de sa compatibilité multiplateforme.

Histoire

L'ère des logiciels propriétaires (2001-2014)

Juan « reduz » Linietsky et Ariel « punto » Manzur ont cofondé Codenix en 1999, une société de conseil en développement de jeux vidéo. Dès 2001, ils ont commencé à travailler sur un moteur de jeu alors nommé « Larvotor », dont la licence a été concédée à des sociétés tierces en Argentine. Au cours des dix années suivantes, le moteur a été renommé « Legacy », « NG3D », « Larvita » et enfin « Godot ». Le nom « Godot » a été choisi en référence à la pièce de Samuel Beckett , En attendant Godot , car il représente le désir constant d'ajouter de nouvelles fonctionnalités au moteur, afin de le rapprocher d'un produit exhaustif, même si cela ne se réalisera jamais. Linietsky et Manzur ont rejoint OKAM et la société a collaboré avec plusieurs studios à l'époque des logiciels propriétaires, dont Square Enix . Linietsky a toutefois indiqué que leurs travaux étaient entravés par l'instabilité politique et économique qui régnait alors en Argentine.

L'ère du logiciel libre et open source (2014-présent)

En 2014, Linietsky envisageait de quitter l'Argentine et publia le code source de Godot sur GitHub sous licence MIT . Godot a rejoint la Software Freedom Conservancy (SFC) le 4 novembre 2015. Le 22 juin 2016, Godot a reçu une subvention de 20 000 $ du programme « Mission Partners » de Mozilla Open Source Support (MOSS) pour l'ajout de la prise en charge des WebSockets , de WebAssembly et de WebGL 2.0.

La mise à jour 3.0 de Godot a permis d'intégrer une longue liste de fonctionnalités souhaitées, nécessitant une refonte majeure du moteur, impossible à réaliser commercialement à l'époque où le logiciel était propriétaire. Grâce au soutien de Miguel de Icaza , Godot a reçu un don de 24 000 $ de Microsoft en 2017 pour implémenter C# comme langage de script. Un compte Patreon a été lancé, permettant à Linietsky et Verschelde de se consacrer pleinement au projet. La version 3.0 est sortie en 2018. La mise à jour 3.1 a ajouté un moteur de rendu OpenGL ES 2.0 destiné aux appareils mobiles, la prise en charge d'ES 3.0 par les fabricants étant alors limitée.

En 2019, deux équipes ont été formées : celle de Linietsky se concentrait sur la branche Vulkan (devenue par la suite la version 4.0) et celle de Verschelde sur les mises à jour de la branche 3.x. Linietsky a indiqué qu'une partie du problème venait du fait que la branche 3.x avait été conçue selon d'anciens principes architecturaux, notamment pour les processeurs monocœurs. L'objectif était donc de repenser l'architecture de base pour la version 4.0 et de prendre en compte les principes modernes. En 2020, Godot a reçu un prix de 250 000 $ d'Epic Games pour améliorer le rendu graphique et le langage de développement intégré du moteur, GDScript. La branche 4.0 a été publiée en version alpha début 2022 et a été peaufinée tout au long de l'année. En août de la même année, Linietsky et plusieurs autres membres de l'équipe Godot ont fondé W4 Games afin de proposer des services commerciaux basés sur le moteur, notamment des portages pour consoles qui ne pouvaient être inclus dans son code source ouvert. En novembre, Godot a annoncé son intention de quitter la SFC pour rejoindre sa propre fondation, la Godot Foundation, nouvellement créée.

La mise à jour 4.0 complète, intégrant la prise en charge de Vulkan, a été déployée en 2023, en même temps que l'arrivée du moteur Godot sur l'Epic Games Store. La version disponible sur Epic est identique aux autres, tant au niveau du contenu que de la licence ; la plateforme sert uniquement de canal de distribution et de mise à jour. Cependant, la version du moteur compatible .NET/C# n'est disponible ni sur l'Epic Games Store, ni sur Itch.io ou Steam . En septembre, Unity Technologies a annoncé des changements majeurs concernant la licence du moteur Unity , notamment l'ajout de « frais d'exécution » facturés aux utilisateurs lors de l'installation de jeux Unity. En conséquence, certains développeurs sont passés d'Unity à Godot, et Re-Logic a fait un don de 100 000 $ à Godot, annonçant par la suite un don mensuel de 1 000 $ afin de soutenir une alternative open source à Unity. Deux ans plus tard, Emilio Coppola, de la Fondation Godot, a déclaré que le montant des contributions avait « doublé » à la suite de ce changement.

En 2025, la Fondation Godot a publié une première version bêta de l'Asset Store de Godot, conçue pour remplacer la bibliothèque d'assets existante. En juin 2026, elle a remplacé la bibliothèque d'assets dans le cadre de la version 4.7.

Réception

En avril 2026, Marcus Chen de Tech Insider a comparé Godot et Unity sous différents aspects. En termes de performances brutes , Chen a estimé que Godot était plus adapté aux jeux vidéo avec des graphismes 2D (l'implémentation du rendu 2D d'Unity étant simulée en 3D) ou à des graphismes 3D simples , comme le low poly , tandis qu'Unity gérait mieux les projets à haute fidélité graphique grâce à son Universal Render Pipeline. Chen a noté que le GDScript de Godot était similaire au pseudocode et plus accessible que le C#, le langage de programmation principal d'Unity, que Godot prenait également en charge, en plus du C++ et du Python. Il a également souligné que le caractère gratuit et open source de Godot contrastait avec le modèle payant d'Unity, rendant le premier pertinent pour les développeurs disposant de budgets limités ou inexistants. À l'inverse, la compatibilité avec les consoles de jeux vidéo et les outils tiers a été considérée comme un avantage pour Unity. De plus, grâce à sa présence plus ancienne sur le marché, Unity proposait davantage de ressources disponibles dans son Asset Store et un marché de l'emploi plus important, selon Chen .

Une comparaison approfondie des performances entre Unity et Godot a été réalisée en mai 2026 par Thomas Grové, fondateur de Studio Interrupt, qui a créé le même projet sur les deux moteurs. Grové a conclu qu'Unity offrait des performances de rendu supérieures, tandis que Godot présentait des avantages significatifs en termes de vitesse de chargement et de compilation des projets , ainsi que d'une taille de fichier de 164 mégaoctets , contre 20 gigaoctets pour Unity .

Historique des versions

Godot a atteint la version 1.0 le 15 décembre 2014, marquant la première version stable et l'ajout du lightmapping , de la prise en charge des navmesh et de nouveaux shaders . La version 1.1 est sortie le 21 mai 2015, apportant une autocomplétion améliorée dans l'éditeur de code, un éditeur visuel de shaders, une nouvelle API pour le système d'exploitation permettant la gestion des écrans et des fenêtres, une physique 2D améliorée et un moteur 2D réécrit, une meilleure prise en charge de Blender Collada et un nouveau thème sombre.

Godot 2.0 est sorti le 23 février 2016, apportant une meilleure instanciation et un meilleur héritage de scènes, un nouveau navigateur de système de fichiers, l'édition de plusieurs scènes et un débogueur amélioré. Cette version a été suivie par la version 2.1 en août 2016, qui a introduit une base de données d'actifs, un profileur et une API de plugins.

Godot 3

La version 3.0 a été publiée le 29 janvier 2018, ajoutant un nouveau moteur de rendu PBR implémenté dans OpenGL ES 3.0 , la compatibilité avec la réalité virtuelle et la prise en charge de C# (via Mono ) grâce à un don de 24 000 $ de Microsoft. La version 3.0 a également ajouté le moteur physique Bullet en plus du moteur physique 3D intégré et a été la première version de Godot à être incluse dans Debian.

Godot 3.1 est sorti le 13 mars 2019. Ses principales nouveautés étaient l'ajout de GDScript statiquement typé OpenGL ES 2.0 . Godot 3.2 est sorti le 29 janvier 2020. Ses principales nouveautés étaient une documentation considérablement améliorée, une prise en charge nettement améliorée du C# et la compatibilité avec les fichiers glTF 2.0 .

Le développeur principal, Juan Linietsky, a passé la majeure partie de son temps à travailler sur une branche Vulkan séparée qui serait plus tard fusionnée dans la branche principale pour la version 4.0, le travail sur la version 3.2 a donc été principalement effectué par d'autres contributeurs.

Godot 3.3 est sorti le 21 avril 2021, avec des fonctionnalités telles que la prise en charge d'ARM sur macOS, la prise en charge des Android App Bundles , la prise en charge MP3, la prise en charge d'Autodesk FBX , la prise en charge de WebXR et un éditeur Web.

Godot 3.4 est sorti le 6 novembre 2021 après six mois de développement, intégrant des fonctionnalités manquantes et des corrections de bugs essentielles à la publication de jeux 2D et 3D avec Godot 3, et optimisant et fiabilisant les fonctionnalités existantes.

Godot 3.5 est sorti le 5 août 2022 après neuf mois de développement. Tout comme Godot 3.4, il visait à implémenter des fonctionnalités manquantes et à corriger des bugs importants pour les jeux vidéo 2D et 3D créés avec Godot 3. Parmi les nouveautés, on trouve l'interpolation physique en 3D, la compilation asynchrone des shaders, et bien plus encore.

Le développement de Godot 3.x a été considérablement ralenti lors de la distribution initiale de la version bêta 4.0, et Godot 3.6 est ainsi sorti le 9 septembre 2024 après deux ans de développement. Cette nouvelle version a introduit l'interpolation physique 2D et le culling hiérarchique, ainsi que la fusion de maillages 3D, le niveau de détail , un culling des ombres plus précis, les matériaux ORM, et bien plus encore.

Godot 4

Godot 4 est sorti le 1er mars 2023. Cette mise à jour majeure refond le système de rendu, ajoute la prise en charge de l'API graphique Vulkan , améliore les performances et l'ergonomie de GDScript, perfectionne les systèmes de physique et d'animation, et introduit de nombreuses autres fonctionnalités et corrections de bugs. Le développement de Godot 4 a débuté en 2019 avec la réécriture du moteur de rendu pour utiliser Vulkan par Linietsky. En 2020, plusieurs contributeurs ont rejoint l'équipe de développement et ont travaillé sur différents aspects de Godot 4, tels que les améliorations de GDScript, la refonte du moteur physique, la réécriture du système d'animation, les améliorations de l'ergonomie de l'éditeur, et bien plus encore.

La première version alpha de Godot 4 a été mise à disposition des premiers utilisateurs en janvier 2022 pour des tests. Elle intégrait de nouvelles fonctionnalités telles que l'illumination globale basée sur SDF, les particules gérées par GPU et les ombres douces dynamiques. En septembre 2022, Godot 4 est passé en version bêta. Cette version a également ajouté la prise en charge de WebXR , le support de C# pour Android et iOS, ainsi que de nouvelles fonctionnalités audio. Le 1er mars 2023, Godot 4 a été officiellement publié en tant que version stable après plusieurs versions bêta et corrections de bogues.

Godot 4.1 a suivi plus tard en 2023, ajoutant le multithreading expérimental des scènes, des améliorations de l'éditeur et des améliorations du C#. Godot 4.2 est sorti le 30 novembre 2023, implémentant une refonte de l'outil d'animation et du système de particules, des améliorations du pipeline d'importation et ajoutant la prise en charge de FSR 2.2.

Godot 4.3 est sorti le 15 août 2024 et a ajouté la synchronisation GPU via des graphes acycliques, des effets de compositeur de pipeline de rendu et un retargeting d'animation 3D amélioré.

Godot 4.4 est sorti le 5 mars 2025 et a introduit l'intégration avec le moteur physique Jolt. Godot 4.5 a suivi en septembre 2025 et a introduit plusieurs fonctionnalités telles que la prise en charge des tampons de stencil et une refonte du système de collision des TileMapLayers qui fusionne les formes cellulaires placées en formes de collision plus grandes chaque fois que cela est possible. La version 4.6 est sortie en janvier 2026, ajoutant la possibilité d'être compilée en tant que bibliothèque autonome et un nouveau thème par défaut. En juin 2026, la version 4.7 est sortie, incluant la prise en charge du HDR , les lumières de zone et les textures dessinables.

Historique des versions

Historique des versions de Godot EngineVersiondate de sortieNotesMono (C#). Ajout de Bullet comme moteur physique par défaut.LTS .Vulkan . Passe de Mono à .NET 6 CoreCLR. Introduit l'illumination globale basée sur SDF, ainsi que plusieurs modifications de l'éditeur et des optimisations de performances.FSR 2.2.Prise en charge de Wayland , prise en charge de NativeAOT, refonte de l'interpolation physique 3D, mises à jour de l'interface graphique, tampon de stencil, occlusion spéculaire, précompilation des shaders.Prise en charge HDR , textures dessinables, éclairage de zone, joysticks virtuels.

Usage

De nombreux jeux du studio OKAM ont été créés avec Godot, notamment Dog Mendonça & Pizza Boy , qui utilise l'extension de jeu d'aventure Escoria. De plus, il est utilisé dans les programmes scolaires des lycées de Virginie-Occidentale , en raison de sa facilité d'utilisation pour les non-programmeurs et des ressources pédagogiques déjà existantes. Battlefield 6 utilise Godot pour sa plateforme de création de contenu par les utilisateurs , « Battlefield Portal ».

Jeux vidéo notables réalisés avec Godot

Année de sortieTitrePromoteurNotes
2015/2016Déponie Daedalic EntertainmentPortages iOS et PlayStation 4
2016Les aventures interactives de Dog Mendonça et Pizzaboy Studio OKAM
2018Codé en dur Jeux Ghosthug
2019Commandant Keen dans Keen Dreams id Software / Lone Wolf TechnologyPremière version Nintendo Switch uniquement, à ne pas confondre avec l' édition définitive .
2021Brigade de la cruauté Produits de consommation souples
Sonic Colors : Ultimate Sonic Team / Blind Squirrel GamesUne version modifiée de Godot a été utilisée.
2021-2022Série des Mystères de Carol Reed Jeux MDNA
2022L'affaire de l'idole d'or Jeux en gris
Gardien du dôme Bippinbits
2023Brotato Poisson-globe
Roulette à la chevrotine Mike Klubnika
Cassette Beasts Studio Bytten
Chance d'être propriétaire TrampolineTales
2024Œufs arctiques Le musée de l'eau
Batailles de sacs à dos JouerAvecFurcifer
Salles de tourment À la poursuite des carottes
L'Ascension de l'Idole d'Or Jeux de couleur grise
Jusque-là Jeux polychromes
Pêche à la toile lamedeveloper
2025Créateur de jeux d'action Jeux de Gotcha GotchaPar les créateurs de RPG Maker
Battlefield 6 Studios BattlefieldUtilisé pour l' éditeur de cartes de Battlefield Portal
Restaurant Pho du frère Hai marisa0704
Royaumes de la Décharge Jeux de cafards
Les arbres-racines sont morts Truite maléfiqueVersion remasterisée
2026Free Stars : Enfants de l'Infini Jeux de crevettes pistolet
Blocs lucides Lucy B. Locks
Tuer la Flèche 2 Méga Critique
Route de Vostok Route vers VostokInitialement développé avec le moteur Unity, le projet est passé à Godot en raison du coût d'exécution d'Unity.
Bataille Bow-wow M. Katsu

Le moteur a été utilisé dans des projets commerciaux, notamment le développement de Sonic Colors Ultimate par Sega .

Personnes clés

Juan Linietsky

Juan Linietsky (né en 1976) est un développeur de logiciels et concepteur de moteurs de jeux argentin, surtout connu comme le co-créateur et le développeur principal de longue date de Godot. Linietsky est né en 1976 à Buenos Aires , en Argentine. Il a développé un intérêt pour la programmation et les jeux vidéo dès son plus jeune âge.

En 2007, Linietsky a cofondé le projet Godot Engine avec Manzur, dans le but de proposer une alternative libre et open source aux moteurs de jeu propriétaires. Il en est le développeur principal depuis sa création, gérant l'architecture du moteur et sa feuille de route de développement.

Ariel Manzur

Ariel Manzur est un développeur de logiciels argentin, surtout connu comme cofondateur de Godot. Manzur est né à Buenos Aires. Dès son plus jeune âge, il s'est intéressé à l'informatique et aux technologies du jeu vidéo, se concentrant finalement sur des outils qui pourraient être partagés et étendus par d'autres programmeurs et concepteurs.