Up to date

This page is up to date for Godot 4.3. If you still find outdated information, please open an issue.

Liste des fonctionnalités

Cette page vise à lister toutes les fonctionnalités actuellement supportées par Godot.

Note

This page lists features supported by the current stable version of Godot. Some of these features are not available in the 3.x release series.

Plates-formes

Voir aussi

Voir Configuration requise pour les prérequis de matériels et de version de logiciels.

Peut exécuter à la fois l'éditeur et les projets exportés :

  • Windows (x86 and ARM, 64-bit and 32-bit).

  • macOS (x86 et ARM, 64-bit uniquement).

  • Linux (x86 et ARM, 64-bit et 32-bit).

    • Les exécutables sont liés statiquement et peuvent fonctionner sur n'importe quelle distribution s'ils sont compilés sur une distribution suffisamment ancienne.

    • Official binaries are compiled using the Godot Engine buildroot, allowing for binaries that work across common Linux distributions.

  • Android (le support de l'éditeur est expérimental).

  • Navigateurs internet. Expérimental en 4.0, l'utilisation de Godot 3.x est recommandée à la place quand HTML 5 est visé.

Exécute les projets exportés :

Godot vise à être aussi indépendant des plateformes que possible et peut être porté sur de nouvelles plateformes avec une relative facilité.

Note

Les projets écrits en C# utilisant Godot 4 ne peuvent à l'heure actuelle être exportés sur la plateforme web. Pour utiliser C# sur cette plateforme, préférez Godot 3. Le support des plateformes Android et iOS sont disponibles dans Godot 4.2 mais de manière expérimentale et certaines limitations s'appliquent alors.

Éditeur

Fonctionnalités :

  • Éditeur de scène hiérarchique.

  • Éditeur de script intégré.

  • Support des éditeurs de script externes tels que Visual Studio Code ou Vim.

  • Débogueur GDScript.

    • Le traitement du débogage des tâches concurrentes est disponible depuis la version 4.2.

  • Profileur visuel avec indications du temps CPU et GPU pour chaque étape du pipeline de rendu.

  • Outils de surveillance des performances, incluant des moniteurs de performances personnalisés.

  • Rechargement de script en direct.

  • Édition de scènes en direct.

    • Les changements seront répercutés dans l'éditeur et seront conservés après la fermeture du projet en cours.

  • Inspecteur à distance.

    • Les changements ne seront pas répercutés dans l'éditeur et ne seront pas conservés après la fermeture du projet en cours d'exécution.

  • Réplication de caméra en direct.

    • Déplacez la caméra de l'éditeur et voyez le résultat dans le projet en cours d'exécution.

  • Documentation de référence de classe hors ligne intégrée.

  • Utilisez l'éditeur dans des dizaines de langues fournies par la communauté.

Plugins :

Rendu

3 méthodes de rendu (exécuté par 2 pilotes de rendu) sont disponible :

  • Forward+, exécuté par Vulkan 1.0 (avec optionnellement les fonctionnalités de Vulkan 1.1 et 1.2). Le backend graphique le plus avancé, adapté uniquement aux plateformes de bureau. Utilisé par défaut sur les plateformes de bureau.

  • Forward Mobile, exécuté par Vulkan 1.0 (avec optionnellement les fonctionnalités de Vulkan 1.1 et 1.2). Moins de fonctionnalités, mais affiche les scènes simple plus rapidement. Adapté pour les plateformes mobiles et de bureau. Utilisé par défaut sur les plateformes mobiles.

  • Compatibilité, exécuté par OpenGL 3.3 / OpenGL ES 3.0 / WebGL 2.0. Le backend graphique le moins avancé, adapté aux plateformes de bureau bas de gamme et aux plateformes mobiles. Utilisé par défaut sur la plateforme web.

Graphismes 2D

  • Rendu de sprite, polygone et ligne.

    • Des outils de haut niveau pour dessiner des lignes et des polygones tels que Polygon2D et Line2D, avec un support pour la texturisation.

  • AnimatedSprite2D comme un assistant à la création de sprites animés.

  • Couches de parallaxe.

    • Pseudo-3D supportée incluant un aperçu dans l'éditeur.

  • Éclairage 2D avec une carte normale et une carte spéculaire.

    • Lumières ponctuelles (omnidirectionnelles/spot) et directionnelles 2D.

    • Ombres dures ou douces (réglables en fonction de chaque lumière).

    • Les shaders personnalisés peuvent accéder en temps réel a une représentation SDF de la scène 2D basé sur les nœuds LightOccluder2D, qui peut être utilisé pour améliorer les effets d'éclairage 2D, y compris l'éclairage global 2D.

  • Rendu de police utilisant des bitmaps, la rasterisation avec FreeType ou des champs de distances signées multicanal (MSDF).

    • Les polices bitmap peuvent être exportées à l'aide d'outils comme BMFont, ou importé d'images (pour des polices avec une largeur fixée seulement).

    • Les polices dynamiques prennent en charge les polices monochromes ainsi que les polices colorées (par exemple les émojis). Les formats pris en charge sont TTF, OTF, WOFF1 et WOFF2.

    • Le support des polices dynamiques propose des contours de police facultatifs avec une largeur et une couleur ajustables.

    • Les polices dynamiques supportent les polices variables et les fonctionnalités d'OpenType ainsi que les ligatures.

    • Les polices dynamiques supportent la simulation du gras et l'italique quand le fichier de la police n'a pas ces styles.

    • Prise en charge du sur-échantillonnage des polices dynamiques pour maintenir la netteté des polices à des résolutions plus élevées.

    • Les polices dynamiques prennent en charge le positionnement subpixel pour rendre les polices plus nettes à de petites tailles.

    • Les polices dynamique supportent les optimisations LCD subpixel pour rendre les polices encore plus nettes à des petites tailles.

    • Les polices de caractères de cartes de distances signés peuvent être étirées dans n'importe quelle résolution sans passer par une re-rastérisation. L'usage multi-canaux permet aux polices de caractères SDF d'être réduites à de plus petites tailles comparés à des polices SDF monochromes.

  • Particules calculées par le GPU avec prise en charge de shaders de particules personnalisés.

  • Particules générées par le CPU.

  • Optionnel Rendu HDR 2D pour de meilleurs effets de brillance.

Outils 2D

  • TileMaps pour de la conception de niveau 2D basé sur des tuiles.

  • Caméra 2D avec lissage intégré et marges de déplacement.

  • Nœud Path2D pour représenter un chemin dans l'espace 2D.

    • Peut être dessiné dans l'éditeur ou généré de manière procédurale.

    • Nœud PathFollow2D pour que les nœuds suivent un Path2D.

  • Classe d'aide à la géométrie 2D.

Physique 2D

Corps physiques :

  • Corps statiques.

  • Corps à animer (pour des objets bougeant uniquement par script ou animation, comme des portes et des plateformes).

  • Corps rigides.

  • Corps de personnage.

  • Les articulations.

  • Zones pour détecter les corps qui y entrent ou en sortent.

Détection de collision :

  • Formes intégrées : ligne, pavé, cercle, capsule, limite du monde (plan infini).

  • Polygones de collision (peuvent être dessinés manuellement ou générés à partir d'un sprite dans l'éditeur).

Graphismes 3D

  • Rendu HDR avec sRGB.

  • Caméras perspective, orthographiques et frustum-offset.

  • Lors de l'utilisation de Forward+, un pré-calcul de profondeur est utilisé pour améliorer les performances dans les scènes complexes en réduisant le coût du surdessin.

  • Variable rate shading pour les GPUs supportés, avec un moteur de rendu Forward+ et Mobile.

Rendu basé sur la physique (fonctionnalités de matériau intégrés):

  • Suit le modèle Disney PBR.

  • Supporte les modes d'ombrage diffus Burley, Lambert, Lambert Wrap (demi-Lambert) et Toon.

  • Supporte les modes de d'ombrage Schlick-GGX, Toon et Spéculaire désactivé.

  • Utilise un flux de travail de type rugosité-métal avec support des textures ORM.

  • Utiliser l'occlusion spéculaire d'horizon (modèle en filament) pour améliorer l'apparence du matériau.

  • Cartographie des normales.

  • Cartographie parallaxe/relief avec niveau de détail automatique basé sur la distance.

  • Cartographie détaillée des cartes d'albédo et de normales.

  • Diffusion sous-surface et transmittance.

  • Réfraction dans l'espace de l'écran avec support de la rugosité du matériau (donnant une réfraction floue).

  • Fondu de proximité (particules molles) et fondu de distance.

  • Le fondu de distance peut utiliser le mélange alpha ou le tramage pour éviter de passer par le pipeline de transparence.

  • Le tramage peut être déterminée par pixel ou par objet.

Éclairage en temps réel :

  • Lumières directionnelles (soleil/lune). Jusqu'à 4 par scène.

  • Lumières omnidirectionnelles.

  • Projecteurs dont l'angle du cône et l'atténuation sont réglables.

  • La lumière spéculaire, la lumière indirecte et l'énergie du brouillard volumétrique peuvent être réglées pour chaque lumière.

  • "Taille" de la lumière réglable pour les fausses lumières de zone (rendra également les ombres plus floues).

  • Système optionnel d'atténuation de la distance permettant d'atténuer les lumières éloignées et leurs ombres, ce qui améliore les performances.

  • Lors de l'utilisation du backend Forward+ (par défaut pour les ordinateurs de bureau), les lumières sont rendues avec des optimisations avancées groupées pour réduire leur coût individuel. Le rendu groupé lève également toute limite quant au nombre de lumières pouvant être utilisées sur un maillage.

  • Lors de l'utilisation du moteur de rendu Forward Mobile, jusqu'à 8 lumières omnidirectionnelles et 8 lumières ponctuelles peuvent être affichés par ressource de maillage. Un éclairage précalculé peut être utilisé pour surmonter cette limite si nécessaire.

Cartographie des ombres :

  • DirectionalLight : Orthogonal (le plus rapide), PSSM 2-split and 4-split. Supporte le mélange entre les divisions (splits).

  • OmniLight : Double paraboloïde (rapide) ou cubemap (plus lent mais plus précis). Supporte les textures colorées du projecteur sous forme de panoramas.

  • SpotLight : Texture unique. Supporte les textures de projecteur colorées.

  • Décalage du biais de l'offset normal des ombres et compression des ombres pour réduire la quantité d'acné des ombres et l'effet Peter Pan.

  • Flou d'ombre de type :abbr:PCSS (Ombres Douces Plus Proches en Pourcentage) basé sur la taille de la lumière et la distance par rapport à la surface sur laquelle l'ombre est projetée.

  • Flou d'ombre réglable pour chaque lumière.

Éclairage global avec éclairage indirect :

  • :ref :Lightmaps précalculés<doc_using_lightmap_gi> (rapide, mais ne peut pas être mis à jour à l'exécution) .

    • Supporte le pré-calcul de l'éclairage indirect seul ou le pré-calcul de l'éclairage direct et indirect. Le mode de pré-calcul peut être ajusté pour chaque lumière afin de permettre le pré-calcul de configurations d'éclairages hybrides.

    • Supporte l'éclairage dynamique d'objets en utilisant un système automatique et manuel de sondes.

    • Prend en charge, de manière optionnelle, l'éclairage directionnel et les réflexions approximatives basées sur les harmoniques sphériques.

    • Les lightmaps sont pré-calculées avec la carte graphique en utilisant le calcul des shaders (qui est beaucoup plus rapide comparé au calcul du processeur pour créer une lightmap). Pré-calculer peut uniquement être effectué à partir de l'éditeur, pas dans les projets exportés.

    • Supporte le débruitage avec JNLM ou le débruitage basé sur le CPU/GPU avec OIDN.

  • Sondes voxel-based GI. Supporte les lumières dynamiques et les occlusions dynamiques, tout en supportant aussi les réflexions. Requière une étape de pré-calcul rapide qui peut être effectué dans l'éditeur ou pendant la durée d'exécution (même dans un projet exporté).

  • Signed-distance field GI conçu pour les grands mondes ouverts. Supporte les lumières dynamiques, mais pas les occlusions dynamiques. Supporte les réflexions. Pas de pré-calcul requis.

  • Screen-space indirect lighting (SSIL) à la moitié ou à pleine résolution. Rendu totalement en temps réel et supporte n'importe quelle source de lumière émissive (incluant les décalques).

  • VoxelGI et SDFGI utilisent un passage différé pour permettre un rendu GI à la moitié de résolution pour améliorer les performances (il y a aussi la fonctionnalité de support MSAA).

Réflexions :

  • Réflexions basées sur les voxels (quand elles utilisent les sondes GI) et réflexions basées sur le SDF (quand elles utilisent les Signed Distance Field GI). Ces réflexions basées sur les voxels sont visibles sur les surfaces transparentes, pendant que les réflexions brutes basées sur SDF sont visibles sur des surfaces transparentes.

  • Réflexions rapides précalculées ou lentes en temps réel à l'aide de ReflectionProbe. La correction du parallaxe peut être activée en option.

  • Réflexions de l'espace écran avec prise en charge de la rugosité des matériaux.

  • Les techniques de réflexion peuvent être mélangées pour une plus grande précision ou une plus grande évolutivité.

  • Quand le backend Forward+ est utilisé (par défaut sur PC), les sondes de réflexion sont rendues avec des optimisations regroupées avant pour diminuer leur coût individuel. Aussi les rendus regroupés montent tous les limites sur le nombre de sondes de réflexion qui peuvent être utilisées dans un maillage.

  • Lors de l'utilisation du backend Forward Mobile, jusqu'à 8 sondes de réflexion peuvent être affichées par ressource de maillage.

Décalques :

  • Prend en charge l'albédo, l'émissif, ORM et le cartographie des normales.

  • Les canaux de texture sont superposés de manière fluide sur le matériau sous-jacent, avec prise en charge des décalques normaux/ORM uniquement.

  • Prise en charge du fondu normal pour atténuer le décalque en fonction de son angle d'incidence.

  • Ne dépend pas de la génération des maillages à l'exécution. Cela signifie que les décalques peuvent être utilisés sur des maillages complexes sans chute de performance, même si le décalques bouge à chaque trame.

  • Support pour le filtrage de textures au plus proche voisin, bilinéaires, trilinéaires ou anisotropes (configuré globalement).

  • Système optionnel d'atténuation avec la distance pour atténuer les décalques éloignés, améliorant ainsi les performances.

  • Lorsque vous utilisez le backend Forward+ (par défaut sur PC), les décalques sont rendus avec les optimisation avancées groupées pour diminuer leur coût individuel. Les rendus regroupés lèvent aussi les limites du nombre de décalques qui peuvent être utilisées pour un maillage.

  • Lors de l'utilisation du backend Forward Mobile, jusqu'à 8 décalques peuvent être affichés par ressource de maillage.

Ciel :

  • Ciel panoramique (en utilisant un HDRI).

  • Ciel procédural et basé sur la physique qui répondent aux lumières directionnelles (DirectionalLights) de la scène.

  • Support pour shaders de ciel personnalisé, qui peut être animé.

  • La carte de rayonnement utilisée pour les lumières ambiantes et spéculaires peuvent être mises à jour en temps réel en fonction des paramètres de qualité choisis.

Brouillard :

  • Profondeur de brouillard exponentielle.

  • Hauteur exponentielle du brouillard.

  • Prise en charge automatique de la coloration du brouillard en fonction de la couleur du ciel (perspective aérienne).

  • Prise en charge de la diffusion du soleil dans le brouillard.

  • Prise en charge du contrôle de la quantité de brouillard qui doit affecter le ciel, avec des contrôles séparés pour le brouillard traditionnel et volumétrique.

  • Prise en charge de la création de matériaux spécifiques ignorant le brouillard.

Brouillard volumétrique :

  • Global brouillard volumétrique qui réagit aux lumières et aux ombres.

  • Le brouillard volumétrique peut prendre en compte la lumière indirecte lors de l'utilisation de VoxelGI ou SDFGI.

  • Les nœuds de brouillard volumétriques qui peuvent être placés pour ajouter du brouillard dans des endroits spécifiques (ou retirer du brouillard d'endroits spécifiques). Les formes prises en charge sont les boîtes, les ellipses, les cônes, les cylindres, et des cartes de densités basées sur les textures 3D.

  • Chaque volume de brouillard peut avoir son propre shader personnalisé.

  • Peut être utilisé avec un brouillard traditionnel.

Particules :

  • Particules basées sur le GPU avec prise en charge des sous-émetteurs (2D + 3D), des traînées (2D + 3D), des attracteurs (3D uniquement) et des collisions (2D + 3D).

    • Attracteur de particules 3D avec des formes supportées : boîte, sphère et des champs de vecteurs 3D.

    • Formes de collision de particules 3D prises en charge : boîte, sphère, champ de distance signée précalculé et carte de hauteur en temps réel (adapté aux effets météorologiques en monde ouvert).

    • La collision de particules en 2D est gérée en utilisant un champ de distance signée généré en temps réel, basé sur les nœuds LightOccluder2D présents dans la scène.

    • Les traînées peuvent utiliser les maillages de traînée ruban et tube intégrés, ou des maillages personnalisés avec des squelettes.

    • Prise en charge des shaders de particules personnalisés avec une émission manuelle.

  • Particules générées par le CPU.

Post-traitement :

  • Cartographie des tons (Linéaire, Reinhard, Filmic, ACES).

  • Ajustements automatiques de l'exposition basés sur la luminosité de la fenêtre d'affichage (et remplacement manuelle de l'exposition).

  • Profondeur de champ rapprochée et lointaine avec simulation de bokeh ajustable (boîte, hexagone, cercle).

  • Occlusion ambiante en espace d'écran (SSAO) à demi ou pleine résolution.

  • Effet d'éblouissement /de flou lumineux avec mise à l'échelle bicubique en option et plusieurs modes de fusion disponibles : Écran, Lumière Douce, Ajouter, Remplacer, Mélanger.

  • Glow peut avoir une texture de carte de saleté colorée, agissant comme un effet de lentille sale.

  • La lueur peut être utilisée comme un effet de flou de la taille de l'écran.

  • Correction des couleurs à l'aide d'une rampe unidimensionnelle ou d'une texture LUT tridimensionnelle .

  • Limiteur de rugosité pour réduire l'impact du crénelage spéculaire.

  • Réglages de la luminosité, du contraste et de la saturation.

Filtrage de texture :

  • Filtrage au plus proche, bilinéaire, trilinéaire ou anisotrope.

  • Les options de filtrage sont définies en fonction de l'utilisation, et non en fonction de la texture.

Compression de texture :

  • Base universelle (lent, mais génère des fichiers plus petits).

  • BPTC pour une compression de haute qualité (non supporté sur macOS).

  • ETC2 (non supporté sur macOS).

  • S3TC (non pris en charge sur les plateformes mobiles/Web).

Antialiasing:

  • Temporel anticrénelage (TAA).

  • AMD FidelityFX Super Resolution 2.2 (FSR2) anticrénelage , peut être utilisé à la résolution native comme une forme de haute qualité temporaire d'anticrénelage.

  • Anticrénelage multi-échantillons (MSAA), pour les deux Anticrénelage 2D et 3D antialiasing.

  • Anticrénelage approximatif rapide (FXAA).

  • Anticrénelage de super-échantillon (SSAA) utilise la mise à l'échelle 3D bilinéaire et la mise à l'échelle de résolution 3D au dessus de 1.0.

  • Alpha d'anticrénelage, utilisez l'alpha MSAA pour la couverture et l'alpha de hachage sur une base de matériau.

Échelle de résolution :

  • Le support pour :ref: un rendu en 3D à une basse resolution <doc_resolution_scaling> tout en gardant le rendu 2D à l'échelle originale. Cela peut être utilisé pour améliorer la performance sur les système bas de gamme ou pour améliorer les visuels des systèmes haut de gamme.

  • La mise à l'échelle de la résolution utilise un filtrage bilinéaire, AMD FidelityFX Super Resolution 1.0 (FSR1) ou AMD FidelityFX Super Resolution 2.2 (FSR2).

  • Le biais des niveaux de détails (LOD) des mipmaps de texture est automatiquement ajusté pour améliorer la qualité aux résolutions inférieures. Il peut également être modifié avec un décalage manuel.

La plupart des effets mentionnés ci-dessus peuvent être ajustés pour améliorer les performances ou pour améliorer davantage la qualité. Cela peut être utile lorsque vous utilisez Utilisation de Godot pour le rendu hors ligne.

Outils 3D

  • Maillages intégrés : cube, cylindre/cône, (hémisphère)sphère, prisme, plan, quadrilatère, tore, ruban, tube.

  • GridMaps pour la conception de niveaux basés sur des tuiles.

  • Géométrie constructive des solides (CSG) (destiné au prototypage).

  • Outils pour la génération de la géométrie procédurale.

  • Nœud Path3D pour représenter un chemin dans l'espace 3D.

    • Peut être dessiné dans l'éditeur ou généré de manière procédurale.

    • PathFollow3D pour que les nœuds suivent un Path3D.

  • Classe d'assistance géométrique 3D.

  • Support pour l'exportation de la scène actuelle au format glTF 2.0, à la fois depuis l'éditeur et au moment de l'exécution depuis un projet exporté.

Physique 3D

Corps physiques :

  • Corps statiques.

  • Corps à animer (pour des objets bougeant uniquement par script ou animation, comme des portes et des plateformes).

  • Corps rigides.

  • Corps de personnage.

  • Corps de véhicules (destinées à la physique arcade, pas à la simulation).

  • Les articulations.

  • Corps mous.

  • Ragdolls.

  • Zones pour détecter les corps qui y entrent ou en sortent.

Détection de collision :

  • Formes intégrées : parallélépipède, sphère, capsule, cylindre, limite du monde (plan infini).

  • Générer des formes de collision triangle pour n'importe quel maillage à partir de l'éditeur.

  • Générer une ou plusieurs formes de collision convexes pour n'importe quel maillage à partir de l'éditeur.

Shaders

  • 2D : Vertex, fragment et shaders de lumière personnalisés.

  • 3D : Vertex, fragment, lumière et shaders de ciel personnalisés.

  • Shaders basés sur du texte utilisant un langage de shader inspiré de GLSL.

  • Éditeur de shaders visuels.

    • Prise en charge des plugins de shaders visuels.

Les scripts

Général :

  • Modèle de conception orientée-objet avec des scripts étendant(extend) des nœuds.

  • Signaux et groupes pour la communication entre les scripts.

  • Prise en charge de script cross-langage.

  • De nombreux types de données d'algèbre linéaire en 2D, 3D et 4D, tels que les vecteurs et les transformations.

GDScript :

C# :

  • Emballé dans un binaire séparé pour limiter la taille des fichiers et les dépendances.

  • Supporte .NET 6 et versions ultérieures.

    • Support complet de la syntaxe et des fonctionnalités du C# 10.0.

  • Prend en charge Windows, Linux et MacOS. À compter de la version 4.2, un support expérimental pour Android et iOS est aussi disponible (requiert un projet .NET 7.0 pour Android et 8.0 pour iOS).

    • Sur Android, seule quelques architectures sont supportées : arm64 et x64.

    • Sur iOS, seule quelques architectures sont supportées : arm64.

    • La plateforme web n'est actuellement pas supportée. Pour utiliser C# sur cette plateforme, envisagez plutôt Godot 3.

  • Il est recommandé d'utiliser un éditeur externe pour bénéficier des fonctionnalités d'un IDE.

GDExtension (C, C++, Rust, D, ...):

  • Lorsque vous en avez besoin, créez un lien vers des bibliothèques natives pour des performances plus élevées et des intégrations tierces.

    • Pour les scripts de logique de jeu, GDScript ou C # sont recommandés si leurs performances sont appropriées.

  • les liaisons GDExtension officiels pour le C et pour le C++.

    • Utilisez le système de compilation et les fonctionnalités de langage que vous souhaitez.

  • Actively developed GDExtension bindings for D, Swift, and Rust bindings provided by the community. (Some of these bindings may be experimental and not production-ready).

Audio

Fonctionnalités :

  • Sortie Mono, stéréo, 5.1 et 7.1.

  • Lecture(playback) non positionnelle et positionnelle en 2D et 3D.

    • Effet Doppler optionnel en 2D et 3D.

  • Support de bus audio re-routable et des effets avec des dizaines d'effets inclus.

  • Prise en charge de la polyphonie (jouer plusieurs sons à partir d'un seul nœud AudioStreamPlayer).

  • Support pour le volume et le pitch aléatoires.

  • Support pour l'ajustement du pitch en temps réel.

  • Prise en charge de la sélection d'échantillons séquentiels/ aléatoires, y compris la prévention de répétitions lors de l'utilisation d'échantillons aléatoires.

  • Les nœuds Listener2D et Listener3D pour écouter depuis une position différente de celle de la caméra.

  • Support pour la génération audio procédurale.

  • Entrée audio afin d'enregistrer depuis des microphones.

  • Entrée MIDI.

    • Pas encore de support pour la sortie MIDI.

API utilisés :

  • Windows : WASAPI.

  • macOS : CoreAudio.

  • Linux : PulseAudio ou ALSA.

Importation

Formats :

  • Images: Voir Importer des images.

  • Audio :

    • WAV avec compression IMA-ADPCM optionnelle.

    • Ogg Vorbis.

    • MP3.

  • Scènes 3D: Voir Importation de scènes 3D.

    • glTF 2.0 (recommandé).

    • .blend (en appelant de manière transparente la fonctionnalité d'exportation glTF de Blender).

    • FBX (en appelant FBX2glTF de manière transparente).

    • Collada (.dae).

    • Wavefront OBJ (scènes statiques uniquement, peut être chargé directement sous forme de maillage ou importé sous forme de scène 3D).

  • Support du chargement de scènes glTF 2.0 au moment de l'exécution, y compris à partir d'un projet exporté.

  • Les maillages 3D utilisent Mikktspace pour générer les tangentes à l'importation, ce qui permet de s'assurer de la cohérence avec les autres applications 3D comme Blender.

Entrée

  • Système de mappage d'entrée utilisant des événements d'entrée codés en dur ou des actions d'entrée reconfigurables.

    • Les valeurs des axes peuvent être associées à deux actions différentes avec une zone morte configurable.

    • Utilise le même code pour prendre en charge les claviers et les manettes de jeu.

  • Entrée clavier.

    • Les touches peuvent être mappées en mode "physique" pour être indépendantes de la disposition du clavier.

  • Entrée souris.

    • Le curseur de la souris peut être visible, caché, capturé ou confiné dans la fenêtre.

    • Une fois capturée, l'entrée brute sera utilisée sous Windows et Linux pour contourner les paramètres d'accélération de la souris du système d'exploitation.

  • Entrée manette de jeu (jusqu'à 8 contrôleurs en simultané).

  • Saisie au stylet/tablette avec support de la pression.

Réseau

  • Réseau TCP de bas niveau utilisant class_StreamPeer`et :ref:`class_TCPServer.

  • Réseau UDP de bas niveau utilisant PacketPeer et UDPServer.

  • Requêtes HTTP de bas niveau utilisant HTTPClient.

  • Requêtes HTTP de haut niveau utilisant HTTPRequest.

    • Prend en charge HTTPS dès leur sortie des certificats groupés.

  • API multijoueur de haut niveau utilisant UDP et ENet.

    • Réplication automatique au moyen des appels de procédure à distance (RPC).

    • Prise en charge des transferts non fiables, sûrs et ordonnés (unreliable, reliable and ordered).

  • Client et serveur WebSocket, disponible sur toutes les plateformes.

  • Client et serveur WebRTC, disponible sur toutes les plateformes.

  • Support d'UPnP pour éviter l'obligation de forward ports lors de l'hébergement d'un serveur derrière un NAT.

Internationalisation

  • Prise en charge complète d'Unicode, y compris les émojis.

  • Enregistrez les chaînes de caractères de localisation en utilisant CSV ou gettext.

    • Prise en charge de la génération de fichiers gettext POT et PO dans l'éditeur.

  • Utilisez les chaînes de caractère localisées dans votre projet automatiquement dans les éléments de l'interface graphique ou en utilisant la fonction tr().

  • Prise en charge de la pluralisation et des contextes de traduction en utilisant des traductions gettext.

  • Prise en charge de la mise en page bidirectionnelle (bidirectional typesetting), le façonnage du texte et les formes localisées OpenType.

  • Mise en miroir automatique de l'interface utilisateur pour les locales de droite à gauche.

  • Prise en charge de la pseudo-localisation afin de tester la compatibilité i18n de votre projet.

Fenêtrage et intégration au systèmes d'exploitation

  • Créer plusieurs fenêtres indépendantes en un seul processus.

  • Déplacez, redimensionnez, minimisez et maximisez la fenêtre créée par le projet.

  • Changez le titre et l'icône de la fenêtre.

  • Demander l'attention (fera clignoter la barre de titre sur la plupart des plateformes).

  • Mode plein écran.

    • Utilise le plein écran sans bordures par défaut sur Windows pour un alt-tab rapide, mais peut aussi utiliser l'écran complet de manière exclusive pour réduire la latence d'entrée.

  • Fenêtre sans bordure (plein écran ou non).

  • Possibilité de garder la fenêtre toujours visible (par dessus les autres fenêtres).

  • Intégration au menu global sur macOS.

  • Exécuter les commandes de manière bloquante ou non bloquante (y compris en exécutant plusieurs instances du même projet).

  • Ouvrez les chemins d'accès aux fichiers et les URL en utilisant les gestionnaires de protocole par défaut ou personnalisés (s'ils sont enregistrés dans le système).

  • Analyser les arguments de ligne de commande personnalisés.

  • Tout binaire Godot (éditeur ou projet exporté) peut être utilisé comme un serveur sans interface graphique en le lançant avec l'argument de ligne de commande --headless. Cela permet de faire fonctionner le moteur sans GPU ni serveur d'affichage.

Mobile

  • Achats In-app sur Android et iOS.

  • Support des annonces publicitaires en utilisant des modules tiers.

Support XR (AR et VR)

  • Dès sa sortie prise en charge d'OpenXR.

    • Comprend la prise en charge des casques les plus populaires tels que le Valve Index, les casques WMR et Quest over Link.

  • Prise en charge des Casques basés sur Android utilisant OpenXR via un plugin.

    • Comprend la prise en charge des casques les plus populaires comme le Meta Quest 1/2/3 et Pro, Pico 4, Magic Leap 2, et Lynx R1.

  • Autres appareils pris en charge via des plugins XR.

  • Diverses boîtes à outils avancées sont disponibles qui implémentent les fonctionnalités communes requises par les applications XR.

Interface Graphique (GUI)

L'interface graphique de Godot est construite en utilisant les mêmes nœuds Control que ceux utilisés pour créer des jeux dans Godot. L'interface utilisateur de l'éditeur peut facilement être étendue de nombreuses façons à l'aide d'add-ons.

Nœuds :

  • Boutons.

  • Cases à cocher, boutons à cocher, boutons radio.

  • Saisie de texte à l'aide de LineEdit (une seule ligne) et TextEdit (plusieurs lignes). TextEdit prend également en charge les fonctions d'édition de code telles que l'affichage des numéros de ligne et la mise en surbrillance de la syntaxe.

  • Menus déroulants avec PopupMenu et OptionButton.

  • Barres de défilement.

  • Étiquettes (Labels).

  • RichTextLabel pour texte formaté en utilisant le BBCode, avec la prise en charge d'effets animés personnalisés.

  • Arbres (Tree) (peuvent également être utilisés pour représenter des tableaux).

  • Un sélectionneur de couleur avec les modes RGB et HSV.

  • Les contrôles peuvent être tournés et étirés.

Dimensionnement :

  • Des ancres pour maintenir les éléments de l'interface graphique dans un coin spécifique, un bord ou au centre.

  • Conteneurs pour placer automatiquement les éléments de l'interface graphique en suivant certaines règles.

  • Mise à l'échelle vers plusieurs résolutions en utilisant les modes d'étirement canvas_items ou viewport.

  • Prise en charge de la conservation de l'aspect en utilisant des ancres et l'aspect d'étirement expand.

Thèmes :

  • Éditeur de thèmes intégré.

    • Générer un thème basé sur les paramètres actuels du thème de l'éditeur.

  • Thème vectoriel procédural utilisant StyleBoxFlat.

    • Prends en charge les coins arrondis/biseautés, les ombres portées, et les largeurs par bordure et l'anticrénelage.

  • Thème basée sur une texture en utilisant StyleBoxTexture.

La petite taille de distribution de Godot peut en faire une alternative appropriée à des frameworks comme Electron ou Qt.

Animation

  • Cinématiques directes et cinématiques inverses.

  • Prise en charge de l'animation de n'importe quelle propriété avec interpolation personnalisable.

  • Prise en charge de l'appel des méthodes dans les pistes d'animation.

  • Prise en charge de la lecture de sons dans les pistes d'animation.

  • Prise en charge des courbes de Bézier dans les animations.

Formats de fichier

  • Les scènes et les ressources peuvent être enregistrées dans des formats textes ou binaires.

    • Les formats Texte sont lisibles par l'homme et plus compatible avec le contrôle de version.

    • Les formats binaires sont plus rapides à sauvegarder/charger pour les grandes scènes/ressources.

  • Lecture et écriture de fichiers texte ou binaires en utilisant FileAccess.

    • Peut éventuellement être compressé ou chiffré.

  • Lecture et écriture de fichiers JSON.

  • Lecture et écriture de fichiers de configuration de type INI en utilisant ConfigFile.

    • Peut (dé)sérialiser tous les types de données Godot, comme Vector2/3, Color, ...

  • Lecture des fichiers XML en utilisant XMLParser.

  • Chargez et enregistrez des images, de l'audio/vidéo, des polices et des archives ZIP dans un projet exporté sans avoir à passer par le système d'importation de Godot.

  • Emballez les données de jeu dans un fichier PCK (format particulièrement optimisé pour la recherche rapide), dans une archive ZIP ou directement dans l'exécutable pour une distribution en fichier unique.

  • Exporter des fichiers PCK supplémentaires qui peuvent être lus par le moteur pour supporter les mods et les DLCs.

Divers

  • Lecture vidéo avec prise en charge intégrée d'Ogg Theora.

  • Mode Movie Maker pour enregistrer des vidéos à partir d'un projet en cours d'exécution avec un son synchronisé et un rythme d'image parfait.

  • Accès de bas niveau aux serveurs ce qui permet de contourner la surcharge de l'arbre de scène lorsque cela est nécessaire.

  • Tutoriel sur la ligne de commande pour l'automatisation.

    • Exportez et déployez des projets en utilisant des plateformes d'intégration continue.

    • Des scripts de complétion sont disponibles pour Bash, zsh et fish.

    • Affichez du texte en couleur sur la sortie standard sur toutes les plates-formes en utilisant print_rich.

  • Prise en charge des modules C++ liés statiquement dans le binaire du moteur.

  • Moteur et éditeur écrit en C++17.

    • Peut être compilé en utilisant GCC, Clang and MSVC. MinGW est également pris en charge.

    • Respectueux des packagers. Dans la plupart des cas, les bibliothèques système peuvent être utilisées à la place de celles fournies par Godot. Le système de compilation ne télécharge rien. Les compilations peuvent être entièrement reproductibles.

  • Licencié sous la licence permissive MIT.

Voir aussi

Le dépôt de propositions Godot liste les fonctionnalités qui ont été demandées par la communauté et qui pourraient être implémentées dans les futures versions de Godot.